Uniapp Android 本地离线打包(详细流程)
创作时间:
作者:
@小白创作中心
Uniapp Android 本地离线打包(详细流程)
引用
CSDN
1.
https://blog.csdn.net/zz00008888/article/details/143777363
Uniapp是一种跨平台开发框架,支持同时开发iOS和Android应用。对于开发者来说,掌握本地离线打包的流程非常重要,不仅可以避免云打包的排队和次数限制,还能更好地开发原生插件。本文将详细介绍Uniapp在Android平台上的本地离线打包流程,包括准备工作、创建测试项目、离线工程调整以及试跑和自定义基座打包等步骤。
一、简介
- App离线SDK暂时不支持Kotlin,未来情况未知。
- uniapp提供了云打包与本地打包两种方案,云打包需要排队且有次数限制,而本地打包则没有这些限制,且对开发原生插件有很大帮助。
- 细节:使用Android Studio打包时,记得先通过工具栏的Build -> Clean Project -> Rebuild Project -> 最后打包或运行,这套流程适用于生成基座或测试离线包。
二、准备工作
- 按照官方文档中的开发环境下载好开发工具与SDK工程。注意:HBuilder X 3.5.0及以上版本新增库breakpad-build-release.aar,3.8.7及以上版本新增库install-apk-release.aar,上架谷歌应用市场不能包含此库。
- 下载的Android工程目录结构介绍,找到HBuilder-Integrate-AS离线打包工程,可以拷贝出来使用Android Studio打开该工程。
- 打开工程后,先按Android 老项目新人如何快速入手跑起来这篇文章快速的配置一下基础环境。
- 如果跑出下面这样的结果,非报错都先不要管,警告随他先。
- 如果需要重新编译项目可以在这里进行,或者使用Build工具栏里面刷新按钮也是一个效果。
三、创建 Uniapp 测试项目
- 使用HBuilderX或Cli创建一个测试项目demo,然后运行到测试机或者模拟器。附:Uniapp 运行到 Android 真机或模拟器。
- 确认当前模拟器或者真机支持的cpu类型,然后进行勾选,这里就是配置要打包的apk需要支持哪些cpu类型的手机,全要支持可以全支持。附:adb 查看安卓手机、模拟器、apk包所支持的 CPU 类型(armeabi、armeabi-v7a、arm64-v8a …)
反正就是勾的越多,打的包越大,你可以测试时用哪个勾哪个,等发包了在根据需要支持的手机市场进行勾选。 - 测试项目正常运行后,则进行本地打包,获得编译后的源码。
- 看控制台,等待编译完成,去给出的目录找到编译后的源码。
- 替换离线打包工程中的源码
- 修改dcloud_control.xml文件里面的appid,其实离线资源文件夹名称就是appid,可以核对下免得出错。
四、离线工程的调整
- 代码导入后,需要进行一些离线打包工程上的细节调整。
- 包名替换,例如com.dzm.test
- [可选]compileSdkVersion修改,compileSdkVersion 30是Android项目中的一个配置项,定义了编译时使用的 Android API 级别(即Android SDK版本),表示你正在使用API级别 30(对应Android 11,即Android 11)。
- 版本号修改,跟HBuilderX -》manifest.json中的版本号保持一致。
- 签名配置,也就是证书相关信息
- 打开Uniapp 开发者后台,登录一下。
- 点击应用名称进入,找到Android云端证书,创建一个,稍微等待一下,需要刷新一下网页就能看到创建好的证书信息了,然后下载证书,放到HBuilder-Integrate-AS离线打包工程根目录。
- 复制证书的绝对路径,并替换配置中的证书路径
- 配置证书别名、密码
- 配置打包的apk需要支持的cpu类型
ndk {
abiFilters 'x86', 'armeabi-v7a', 'arm64-v8a'
}
- 申请Appkey,如果没有则需要申请一下,有则可以直接拷贝,需要前往Uniapp 开发者后台:
点击新增后,需要填的资料中包名按上面的一样,版本可以根据情况来,创建正式与测试两个切换使用,Android 应用签名SHA1值与Android 应用签名SHA256值在上面的证书详情中有,拷贝贴过来即可。其他根据需要可填可不填。
然后创建一个AppKey并拷贝:
将AppKey配置到离线工程中:
这个文件顶部的包名也要改一下,保持同步: - 配置图标,不同分辨率可以按官方文档上的,多建几个文件夹配置。
- 配置应用名称,需要保持一致
五、离线工程试跑
- 创建好虚拟机,点击调试项目
如果报错Execution failed for task ‘:simpleDemo:stripDebugDebugSymbols’. NDK at /Users/dengzemiao/Library/Android/sdk/ndk-bundle did not have a source.properties file点这里。 - 解决问题再次点击调试按钮,项目跑成功了,如果uniapp重复打包导入项目后,最新内容没生效,可以删掉模拟器上安装好的包,重新运行安装一下。
六、离线自定义基座打包
- Uniapp Android 离线生成自定义基座(详细流程)
- Uniapp Android 离线生成自定义基座(官方文档)
热门推荐
生活中的健康小贴士:从骨折康复到美甲护理
水溶肥有什么作用和优点和缺点?
化肥的主要分类,不同化肥的用途是什么?
肺不张的病因、诊断与治疗丨临床必备
用课程建设激活人工智能教育
我和我母亲都是类风湿关节炎患者,我的孩子会是吗?
武昌起义:中国近现代史上的重要节点和革命激情的点燃
武昌起义:中国近现代史上的重要节点和革命激情的点燃
刑事案件如何请律师辩护
14岁自愿的法律年龄问题与刑事责任认定
如何选择合适的基金进行投资
高硼硅玻璃是食品级的吗?使用指南与选购要点
汕头出台新方案!中小学生每天综合体育活动时间不低于2小时
每天2小时体育活动如何保证?
王者荣耀是用什么编程语言开发的
外贸信用证操作中的问题及方案
十类学生必备户外用品有哪些 学生户外运动需要哪些装备
国家能源局:光伏内卷式竞争仍未根本解决 正在配合有关部门研究完善政策措施
游客被袋鼠打伤!上海野生动物园:严格筛选“营业”袋鼠,也别惹火烈鸟
绩效管理循环的中央,如何确保各部门协同?
控股股东集中竞价减持股份的法律规制及其合规路径探析
为何都说日系车开不坏,而德系、美系车却被贴上“娇贵”的标签?
汽车能开多少年?影响汽车寿命的关键因素解析
探索若尔盖的住宿之美:在草原的怀抱中安然入眠
妙绘艺学:赛璐璐的上色方法
赛璐璐画风插画教程:从入门到精通的六步指南
在简历上可以写哪些数据分析项目
简历中有瑕疵部分,在面试中该如何巧妙解释符合面试技巧
放松解压、社交互动、沉浸式体验……87.1%受访青年身边有年轻人聚集的夜市街区
解锁射频技术:多种 S 参数的特性、应用及关键解析