离线打包-Android
一、创建Uniapp应用
1、获取Uniapp项目的Appid。
可在DCloud开发者中心创建应用,或在HBuilderX manifest.json中查看或重新获取Appid。
2、生成Android应用的AppKey
- 在DCloud开发者中心—应用管理—我的应用,找到对应的应用。
- 点击应用名称,进入配置页面
- 点击 各平台信息—新增
- 平台选择Android app,版本按需选择测试/正式,填写APP包名,如com.android.pangea,填写APP签名文件的SHA1值和SHA256值(签名文件生成方式:https://ask.dcloud.net.cn/article/35777 )
- 点击提交,提交成功后在“各平台信息”tab下可以看到新增的记录
- 点击“离线打包Key”项下的创建按钮,点击创建,再回到列表页当前tab下,按钮变为查看按钮,点击查看,可以获取到Android应用的AppKey
二、运行Android原生壳子项目
1、下载AndroidStudio开发工具
建议2022.3.1版本及以上
2、拉取Uniapp Android离线打包工程
地址:https://gitlab-cloud.hisense.com/pangeav2.0/pange-cloud/mobile-app/pangea-android
3、查看并调整AndroidStudio配置
使用AndroidStudio打开该项目,file->settings->Build..->Build Tooles->Gradle,Gradle JDK选择JDK1.8版本,没有对应版本可选择Download JDK或通过网站下载安装,然后编译项目,正常可编译成功无报错,有异常则根据百度处理。
三、替换打包
1、替换AppKey
进入pangea->src->main->AndroidManifest.xml,替换AppKey
xml
<meta-data
android:name="dcloud_appkey"
android:value="第一步获取到的AppKey" />
2、替换签名文件
使用自己的签名文件替换掉pangea->src->test.jks文件,签名文件有.jks与.keystore两种,都支持,进入pangea->src->build.gradle,修改signingConfigs配置,修改applicationId
java
signingConfigs {
config {
keyAlias 'key0' //自己key的别名
keyPassword '123456' //密码
storeFile file('自己的签名文件名称.jks 或 .keystore')
storePassword '123456' //密码
v1SigningEnabled true //不变
v2SigningEnabled true //不变
}
}
defaultConfig {
applicationId "自己的APP包名,如com.android.pangea"
}
3、Uniapp打包
HBuilderX->发行->原生APP 本地打包->生成本地打包APP资源,资源文件在dist->resources->资源文件夹(文件夹名如:__UNI__28902C9),将资源文件夹粘贴到Android项目pangea->src->main->assets->apps文件夹下。
4、修改appid
Android项目打开assets->data->dcloud_control.xml文件,修改appid,确保dcloud_control.xml中的appid与资源文件夹中manifest.json中的id与文件夹名一致
xml
<apps>
<app appid="资源文件夹名称如__UNI__28902C9" appver=""/>
</apps>
5、修改APP名称、图标、启动页图标
- APP名称:pangea->src->main->res->values->strings.xml,修改appname:
<string name="app_name">App名称</string>
- APP桌面图标:pangea->src->main->res->drawable->icon.png,覆盖icon.png,不要修改名称!
- APP推送图标:pangea->src->main->res->drawable->push.png,覆盖push.png,不要修改名称!
- APP启动页图标:pangea->src->main->res->drawable->splash.png,覆盖splash.png,不要修改名称!
6、AndroidStudio打包apk
打开Build Variants面板,选择debug(测试)/release(正式),点击Build->Build Bundle(s)/APK(s)->Build APK(s),打包成功后,安装包在pangea->build->outputs->apk->debug/release->xxx.apk