android studio离线打包uniapp

一、下载安装软件

  1. Android Studio 下载地址:Android Studio官网 OR Android Studio中文社区
  2. HBuilderX
  3. App离线SDK下载:最新android平台SDK下载

二、Android Studio新建项目

三、HBuilder新建项目

四、配置工程

1.基础库配置

1.1 拷贝资源库

将lib.5plus.base-release.aar、android-gif-drawable-release@1.2.23.aar、uniapp-v8-release.aar和oaid_sdk_1.0.25.aar拷贝到libs目录下

将lib.5plus.base-release.aar、android-gif-drawable-release@1.2.23.aar、uniapp-v8-release.aar和oaid_sdk_1.0.25.aar拷贝到libs目录下

将lib.5plus.base-release.aar、android-gif-drawable-release@1.2.23.aar、uniapp-v8-release.aar和oaid_sdk_1.0.25.aar拷贝到libs目录下

1.2 在build.gradle中添加资源引用

注意:HBuilderX3.2.5版本之后适配了AndroidX。

AndroidX版本需添加如下资源

uni-app配置时需要在build.gradle中添加aaptOptions配置

在build.gradle中添加资源引用

2.应用配置

2.1 配置Appkey

3.1.10版本起需要申请 Appkey,申请请参考

复制SHA1

复制Android包名

保存生成App Key

复制App Key

打开Androidmanifest.xml, 导航到Application节点,创建meta-data节点,name为dcloud_appkey,value为申请的AppKey如下:

配置Appkey

2.2 配置应用版本号

配置应用版本号

2.3 配置应用名称

  • 打开app-> src -> main -> res -> values -> strings.xml文件,修改“app_name”字段值,该值为安装到手机上桌面显示的应用名称,建议与manifest.json中name(基础配置中的应用名称)对应。

配置应用名称

2.4 配置应用启动页及provider节点

将下述内容添加到Androidmanifest.xml的application节点中

注意:新建的项目默认会有一个MainActivity的节点,必须删掉!

注意:为适配折叠屏,需要在PandoraEntryActivity的android:configChanges属性中追加“smallestScreenSize|screenLayout|screenSize”,参考如下配置。

注意:${apk.applicationId} 必须替换成当前应用的包名:【即:com.example.uniappdemo

如果集成离线SDK时需要重写application,必须继承自DCloudApplication,否则会导致SDK中业务逻辑无法正常运行。

将对应的application配置到Androidmanifest.xml中(如下),并添加tools:replace=”android:name”以防出现冲突。

配置应用启动页及provider节点

2.5 配置应用图标和启动界面

  • 图标名称icon.png为应用的图标。push.png为推送消息的图标。splash.png为应用启动页的图标。
  • 将icon.png、push.png、splash.png放置到drawable,drawable-ldpi,drawable-mdpi,drawable-hdpi,drawable-xhdpi,drawable-xxhdpi文件夹下,不同文件夹下对应不同图片尺寸,可参考文档

配置应用图标和启动界面

  • 注意:splash.png在不同设备上显示效果不一样,为防止出现拉伸的状况,建议使用Android studio生成.9.png类型图片,可参考文档

3 资源配置

3.1 创建assets资源文件夹

新建assets文件夹

3.2 创建data文件夹并拷贝资源

将SDK->assets->data文件夹拷贝到刚刚创建的assets文件夹下

3.3 从HBuilder中导出app资源

从HBuilder中导出app资源

导出app资源

3.4 创建apps文件夹并拷贝资源

导出的资源复制到assets->apps下

3.5 修改dcloud_control.xml文件

  • 修改dcloud_control.xml中的appid为拷贝过来的uni-app的id,确保dcloud_control.xml中的appid与manifest.json中的id与文件夹名一致,如下图所示:

修改dcloud_control.xml文件

  • 生成自定义基座,需要在根节点下添加debug=”true”和syncDebug=”true”
  • 自定义基座支持热更新需要将debug-server-release.aar打入apk中,生成正式包时可以删除。详细步骤可参考链接

4 其他配置

4.1 AndroidX 配置

  • 需要在项目根目录下的gradle.properties文件中添加如下内容
  • 非AndroidX不加即可

4.2 报错解决

android.suppressUnsupportedCompileSdk=32

4.3 配置签名

  • 将生成的test.keystore文件复制到app目录下
  • 修改build.gradle配置

配置appkey

五、运行

运行

六、打包APK

 

参考: