uni-app离线打包安卓apk

这篇具有很好参考价值的文章主要介绍了uni-app离线打包安卓apk。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

uni-app离线打包apk

记录一下打包apk的过程:
参考:uni-app离线打包官网地址

1. 打包需要

uni-app 离线打包,uni-app开发日记,uni-app,android

uni-app 离线打包,uni-app开发日记,uni-app,android

2.导入工程

uni-app 离线打包,uni-app开发日记,uni-app,android
uni-app 离线打包,uni-app开发日记,uni-app,android
uni-app 离线打包,uni-app开发日记,uni-app,android

2-1.遇见问题

1. 加载.idea和.gradle失败,

uni-app 离线打包,uni-app开发日记,uni-app,android

Unsupported Java. 
Your build is currently configured to use Java 17.0.6 and Gradle 6.5.

Possible solution:
 - Upgrade Gradle wrapper to 7.2 version and re-import the project

解决:FileProject Structure

uni-app 离线打包,uni-app开发日记,uni-app,android

uni-app 离线打包,uni-app开发日记,uni-app,android
重新构建:FileSync Project with Gradle Files
uni-app 离线打包,uni-app开发日记,uni-app,android
安卓结构:ProjectAndroid
uni-app 离线打包,uni-app开发日记,uni-app,android

3.申请appkey

登录开发者中心选择需要打包的应用→各平台信息→查看或新增安卓打包信息

  1. 这里为了项目的交接和管理,还有一些权限问题,最好用公司的邮箱登录;
  2. 该账号和hbuilder开发时候的账号是一个,开发运行的时候项目就自动添加上了;
  3. 如果在自己的账号已经添加上了可以转移项目到公司的账号上;
  4. 如果appID还没用过可以在hbuilder里面重新登录,在根目录manifest.json→基础配置→重新获取appID,运行一下项目就加上了;
  5. 这里需要的应用签名相关的信息就是版权信息,需要配一下;

3-1.SHA1

因为是版权信息,所以可以多个项目用一个签名,如果之前有签名,就直接在签名的目录下打开控制台,输入keytool -list -v -keystore keystore.jks→输入密码获取(注意密码输入不会显示,不可使用复制粘贴)
注意:

  1. 官网给出的获取SHA1的文档的jarsinger签名格式只支持v1签名,
  2. Android studio 打包应用自带的apksinger格式支持v1和v2签名
  3. 安卓离线打包v1版本和v2版本签名官方说明
  4. 总结:就是版本升级和权限的问题,用哪个都行,但是上架谷歌应用商店只支持apksigner验证

申请签名:
这里我用的是apkSinger:
BuildGenerate Signed Bundle / APK...(注意只有项目构建成功后才会有这个选项)
uni-app 离线打包,uni-app开发日记,uni-app,android
② 选择APKNext
uni-app 离线打包,uni-app开发日记,uni-app,android
③ 选择Creat new...
uni-app 离线打包,uni-app开发日记,uni-app,android
④填写信息→OKNext
uni-app 离线打包,uni-app开发日记,uni-app,android
releaseCreate
uni-app 离线打包,uni-app开发日记,uni-app,android
⑧根目录下生成了密钥文件→在文件夹中打开→cmd打开控制台
uni-app 离线打包,uni-app开发日记,uni-app,android
⑨输入keytool -list -v -keystore keystore.jks→输入密码(注意密码输入不会显示,不可使用复制粘贴),
keystore.jks为你的密钥文件名
uni-app 离线打包,uni-app开发日记,uni-app,android

3-2.在开发者中心添加安卓平台的信息

①填写信息
uni-app 离线打包,uni-app开发日记,uni-app,android
②创建appkey
uni-app 离线打包,uni-app开发日记,uni-app,android
uni-app 离线打包,uni-app开发日记,uni-app,android

4.配置项目

①配置appkey
simpleDemo/src/main/AndroidMainifest.xml
uni-app 离线打包,uni-app开发日记,uni-app,android
②配置应用版本号和密钥
/simpleDemo/build.gradle
uni-app 离线打包,uni-app开发日记,uni-app,android

③配置应用名称
simpleDemo/src/main/res/values/strings.xml
uni-app 离线打包,uni-app开发日记,uni-app,android
④配置应用启动页及provider节点:该配置项目模板已配过,核对一下就行
simpleDemo/src/main/AndroidMainifest.xml
uni-app 离线打包,uni-app开发日记,uni-app,android
⑤配置应用图标和启动页
simpleDemo/src/main/res/drawable/...png
uni-app 离线打包,uni-app开发日记,uni-app,android

5.打包应用

①Hbuilder生成本地打包资源
uni-app 离线打包,uni-app开发日记,uni-app,android
②替换AndroidStudio的资源
simpleDemo/src/main/apps/__UNI_A
__UNI_A为appID
uni-app 离线打包,uni-app开发日记,uni-app,android
simpleDemo/src/main/data/dcloud_control.xml
uni-app 离线打包,uni-app开发日记,uni-app,android
③打包
BuildGenerate Signed Bundle / APK...→选择APK→Next→输入别名和别名密码→Next→选择release→Create
uni-app 离线打包,uni-app开发日记,uni-app,android

5-1.遇见问题

5-1打包失败-gradle版本问题

1.gradle版本和Java jdk版本不对应
Unable to make field private final java.lang.String java.io.File.path accessible: 
module java.base does not "opens java.io" to unnamed module @3b998fc7

解决:这里我百度搜索都是下载一个对应版本的Java,但是这条报错的同时右下角还有一个提示,点击按钮就弹出如下窗口,在右侧Notifications也能找到,如果没有弹窗就FileSync Project with Gradle Files重新构建一下,该问题和2-1的问题是相互影响的,当时没注意所以打包失败
uni-app 离线打包,uni-app开发日记,uni-app,android
uni-app 离线打包,uni-app开发日记,uni-app,android
然后不用选,直接按照默认选项点击Run selected steps,然后重新 BuildGenerate Signed Bundle / APK...打包,可能还会提示这个错误,这时候重复此操作,就可以了,它在自动匹配gradle和gradle plugin 的版本。
uni-app 离线打包,uni-app开发日记,uni-app,android

我的成功打包后的gradle和gradle plugin版本:
uni-app 离线打包,uni-app开发日记,uni-app,android

④打包成功,文件夹位置:simpleDemo/release/simpleDemo-release.apk
uni-app 离线打包,uni-app开发日记,uni-app,android文章来源地址https://www.toymoban.com/news/detail-854529.html

到了这里,关于uni-app离线打包安卓apk的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • uni-app离线打包高德地图导入android studio不能正常显示

    本人使用的uni-app SDK版本:Android-SDK@3.8.7.81902_20230704 1.导入以上文件,依赖已经自动添加了 2.确保这个正常引入 3.修改AndroidMainifest.xml,添加自己的密钥

    2024年02月13日
    浏览(39)
  • uni-app打包后安卓不显示地图及相关操作详解

    新公司最近用uni-app写app,之前的代码有很多问题,正好趁着改bug的时间学习下uni-app。 使用uni-app在浏览器调试的时候,地图是展示的,但是打包完成后,在app端是空白的。咱第一次写app,啥也不懂啊不是。 附上一张浏览器调试的截图: 安卓app上是空白页,就不附图了。 因为

    2024年02月11日
    浏览(37)
  • 用 Android Studio 打包 uni-app 的安卓apk;手把手教程、巨详细避坑

    Uni-app 离线打包 apk 1. Android Studio 下载 Android Studio官网 2. HBuilderX下载 HBuilderX下载 3. App离线SDK下载 Android 离线SDK - 正式版 下载后解压文件,将 HBuilder-Integrate-AS 重命名 build-template 并拷贝到一个专门打包用的文件夹下作为打包模板 该文件夹中有一个 simpleDemo 文件夹 即 build-temp

    2024年02月04日
    浏览(40)
  • uni-app开发小程序使用uni.chooseMedia选择图片,安卓手机无法选择图片

    一、在小程序中,选择图片并上传,是一个很常见的功能; 二、最近在开发中,使用 uni.chooseMedia 来做选择图片功能时,苹果手机是正常的,安卓手机打不开!!!代码如下: 就这点屁代码,苹果手机可以正常打开选择图片的功能,安卓手机没法打开!!! !!!! 我百思

    2024年02月16日
    浏览(29)
  • 【TTS】uni-app语音播报app开发 / MT-TTS安卓原生自带语音合成插件(免费无限次)

    TTS 是 Text To Speech 的缩写,即“ 从文本到语音 ”,是人机对话的一部分,让机器能够说话。TTS是语音合成应用的一种。 在程序开发中,有很多TTS的插件,比如百度,讯飞,等等,但是大部分产品都不是完全免费无限制次数调用的且需在线使用 本篇文章介绍一种免费快捷且可

    2023年04月15日
    浏览(110)
  • 【uni-app系列】uni-app之App打包

    选择菜单项 “发行” - “原生App-云打包”: 输入相关信息: 第一次安装时会提示安装依赖: 提示打包校验信息,点击【继续打包】: 如果没有实名认证,提示如下信息: 可以通过修改 manifest.json 取消通讯录权限或进行实名认证处理,本文通过实名认证处理。 登录 DCloud

    2024年02月08日
    浏览(35)
  • 在 WebStorm 中开发 uni-app - 用vue2实现手机APP(apk) + 微信小程序项目开发方案 webstorm开发的uniapp + hbuilderx进行app 小程序打包

    我们主要分析了如下小程序开发框架,主要包括: 框架 技术栈 案例 微信小程序 支付宝小程序 百度小程序 头条小程序 H5 App uni-app Vue 丰富 ⭕ ⭕️ ⭕️ ⭕ ⭕️ ⭕ Taro React 丰富 ⭕ ⭕ ⭕ ⭕ ⭕ ⭕ wepy Vue 丰富 ⭕ ❌ ❌ ❌ ❌ ❌ mpvue Vue 丰富 ⭕ ❌ ❌ ❌ ⭕️ ❌  首先,就要排

    2024年02月05日
    浏览(65)
  • 在 WebStorm 中开发 uni-app - 用vue2实现手机APP(apk) + 微信小程序项目开发方案 webstorm开发的uniapp + hbuilderx进行app 小程序打包

    我们主要分析了如下小程序开发框架,主要包括: 框架 技术栈 案例 微信小程序 支付宝小程序 百度小程序 头条小程序 H5 App uni-app Vue 丰富 ⭕ ⭕️ ⭕️ ⭕ ⭕️ ⭕ Taro React 丰富 ⭕ ⭕ ⭕ ⭕ ⭕ ⭕ wepy Vue 丰富 ⭕ ❌ ❌ ❌ ❌ ❌ mpvue Vue 丰富 ⭕ ❌ ❌ ❌ ⭕️ ❌  首先,就要排

    2023年04月15日
    浏览(43)
  • uni-app云打包与本地打包

    uni-app打包方式目前有两种,云打包和本地打包,主要介绍本地打包, 开始使用打包之前,我们先看一下【 发行 】的工具栏,我们来简单介绍一下云打包与本地打包的区别: 原生APP-云打包: 原生APP-本地打包: 用HBuilderX打开要打包的项目 选中项目列表中的项目右击选择发行

    2023年04月10日
    浏览(34)
  • uni-app之android离线自定义基座

    一 为什么要自定义基座 1,基座其实就是一个app,然后新开发的页面可以直接在手机上面显示,查看效果。 2,默认的基座就是uniapp帮我们打包好的基座app,然后我们可以进行页面的调试。 3,自定义基座主要用来实现原生插件的调用的,自定义基座可以实现使用HBuilder/HBuil

    2024年02月10日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包