将 uni-app 离线打包成 Android apk 安装包
508
2024-04-02
版本说明
这很重要,一切抛开版本谈操作的记录都是耍流氓。
- HBuilder X 4.08
- Android Studio 2023.2.1
- Android离线SDK 4.07.82050_20240328 下载
- Java 1.8.0_311
名词解释
- 基座 指的就是
Android离线SDK
步骤
HBuilder中的项目配置
在 HBuilder X 中导入uni-app项目目录。找到并打开项目目录/src/mainifest.json
文件,显示配置内容,其中需要配置其中 uni-app应用标识(AppID) 如果默认没有的话,点后面的重新获取
会生成一个AppID。然后就是选择开发使用的vue版本,其它信息按实际情况填写即可。
生成本地打包App资源
通过下图中的菜单对uni-app进行打包,打包后注意控制台输出信息,其中有项目的打包后的目录信息。
[HBuilder] 15:29:04.627 项目 'xxx-project' 编译成功。
[HBuilder] 15:29:05.405 项目 'xxx-project'正在导出...
[HBuilder] 15:29:05.623 项目 'xxx-project'导出成功,路径为:D:/Programs/xxx-project/dist/resources/__UNI__XXXX/www
[HBuilder] 15:29:05.623 提示:本wgt文件由HBuilderX 4.08版本生成,运行的基座sdk也需配套相同版本,否则在手机端部分功能可能无法正常使用。详见 https://ask.dcloud.net.cn/article/35627
Android Studio项目准备
首先将上一步骤中获得的__UNI__XXXX
完整的复制到基座
中的\HBuilder-Integrate-AS\simpleDemo\src\main\assets\apps
文件夹中。
使用 Android Studio 打开基座
的HBuilder-Integrate-AS
目录(项目)。
配置基座项目
打开基座项目后,分别打开下图中的4个配置文件。
尤其是第4个文件,在3.x版本的基座程序中没有类似问题,所以参考文章中没有说明。
AndroidMainifest.xml
这里需要配置应用的package
和appkey
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.android.xxx">
<application ... ...>
... ...
<meta-data
android:name="dcloud_appkey"
android:value="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" />
</application>
</manifest>
dcloud_control.xml
这里需要配置应用uni-app的mainifest.json
文件中的AppID
<hbuilder>
<apps>
<app appid="__UNI__XXX" appver=""/>
</apps>
</hbuilder>
strings.xml
这里配置打包后的APP名称
<resources>
<string name="app_name">APP名称</string>
</resources>
build.gradle
这里需要配置applicationId
、keyAlias
、keyPassword
、storeFile
、storePassword
apply plugin: 'com.android.application'
android {
compileSdkVersion 30
buildToolsVersion '30.0.3'
defaultConfig {
applicationId "com.android.xxx"
minSdkVersion 21
targetSdkVersion 28
versionCode 1
versionName "1.0"
multiDexEnabled true
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
signingConfigs {
config {
keyAlias '__uni__xxx'
keyPassword 'keyPassword'
storeFile file('D:/Downloads/xxx.keystore')
storePassword 'storePassword'
v1SigningEnabled true
v2SigningEnabled true
}
}
... ...
}
... ...
再次强调配置信息与DCloud信息对应
注意:图片中对应的修改信息的位置
参考
- 0
- 0
-
分享