- Published on
uni-app:Android离线打包
- Authors

- Name
- Hentai
App离线开发工具包,即App离线SDK,是把App运行环境(runtime)封装为原生开发调用接口,开发者可以在自己的 Android 及 iOS 原生开发环境配置工程使用,包括 Android离线开发SDK 及 iOS离线开发SDK。
AppKey
从3.1.10版本开始使用App离线SDK需要申请Appkey,具体请参考链接 申请Appkey。
开发环境
- Android Studio 下载地址:Android Studio官网 .
- HBuilderX
- App离线SDK下载:最新android平台SDK下载,推荐使用和彩云。
SDK目录说明
|-- HBuilder-Hello App离线打包演示应用
|-- HBuilder-Integrate-AS 集成uni-app的最简示例
|-- SDK SDK库文件目录
|-- Feature-Android.xls Android平台各扩展Feature API对应的详细配置
|-- Readme.txt 版本说明文件及注意事项
|-- UniPlugin-Hello-AS uni原生插件开发示例
导入工程
导入HBuilder-Integrate-AS工程,直接运行simpleDemo项目即可。
配置工程
- 应用配置
打开Androidmanifest.xml, 导航到Application节点,修改meta-data节点,name为dcloud_appkey,value为申请的AppKey如下所示:

<application
...>
<meta-data
android:name="dcloud_appkey"
android:value="替换为自己申请的Appkey" />
打开build.gradle配置应用版本号和applicationId以及signingConfigs

defaultConfig {
applicationId "离线key中的包名/appid/域名"
minSdkVersion 21
targetSdkVersion 33
versionCode 1120
versionName "1.1.20"
multiDexEnabled true
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
signingConfigs {
config {
keyAlias '别名'
keyPassword '证书文件密码'
storeFile file('证书文件,放在项目根目录中')
storePassword '证书文件密码'
v1SigningEnabled true
v2SigningEnabled true
}
}
versionCode为应用的版本号(整数值),用于各应用市场的升级判断,建议与manifest.json中version -> code值一致。
versionName为应用的版本名称(字符串),在系统应用管理程序中显示的版本号,建议与manifest.json中version -> name值一致。
applicationId为应用的包名,一般设置为反向域名,不建议修改。
建议将targetSdkVersion设置为30或以上。
注意:如果targetSdkVersion设置为34时,需要在build.gradle的android节点下新增以下内容:
packagingOptions {
jniLibs {
useLegacyPackaging true
}
}
App离线SDK minSdkVersion最低支持21,小于21在部分5.0以下机型上将无法正常使用。
- 资源配置
删除simpleDemo中assets/apps/下所有资源,从HBuilderX中生成本地App打包资源,将生成的的资源复制到该路径下。修改dcloud_control.xml中的appid确保dcloud_control.xml中的appid与manifest.json中的id与文件夹名一致,如下图所示:

连接手机或启动虚拟机,点击按钮,运行即可。
打包发行
点击Build->Generate Signed App Bundle Or APK...选择APK的方式打包,证书就是之前申请Appkey时的证书文件。