uni-app项目本地打包可在同机安装的不同apk

本文介绍如何通过更改包名、AppID、证书签名及appKey实现同一设备上安装多个来自同一uni-app项目的不同APK,适用于测试场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

        这篇文章也是自己记录用,如果不清楚打包流程,先看 uni-app项目打包成apk(本地打包篇)

        目前测试成功的同机安装不同apk,需要改四样东西,哪怕app的内容完全一样。

        1. 一个新的 包名 ,这个很重要,包名不改,第二三四步的AppID、证书签名和appkey都改了也没用。改包名的地方有两处,一个在老朋友 AndroidManifest.xml 中,一个在 build.gradle 中(build.gradle有两个,不知道为啥,但是一个里面有包名,一个里面没有,改有包名的那个build.gradle)。包名随便改(如果只是测试,建议只改最后一级的名字),确保 AndroidManifest.xml 中的包名和 build.gradle 中的包名相同即可。        

        2. 一个新的 uni-app应用标识(AppID) ,获取方式在uni-app项目打包成apk(本地打包篇)的第2步,点该步骤中的 重新获取 即可。

        3. 一个新的 Android证书签名 ,获取签名的方式在uni-app项目打包成apk(本地打包篇)的第8步。

        4. 一个新的 appKey ,获取appKey的方式在uni-app项目打包成apk(本地打包篇)的第9步

        以上内容修改结束后,重新打包apk,即可在同机上安装不同的apk。效果如下:

### 使用 UniApp 进行离线打包生成 APK 的详细流程 #### ### 准备工作 在开始之前,需确保开发环境已准备好以下工具和资源: - **Android Studio**: 下载并安装版本 4.0 或更高版本[^3]。 - **HBuilder X**: 安装此 IDE 并创建或导入您的 UniApp 项目[^4]。 - **Android SDK 和 NDK**: 需要配置好 Android 离线 SDK 及相关依赖项。 #### ### 打包前的设置 1. 在 HBuilder X 中打开目标 UniApp 项目,并确认项目的 `manifest.json` 文件中的基本信息填写无误,括应用称、图标路径以及 App ID 等字段[^5]。 2. 如果需要自定义权限或其他配置,可以在 `manifest.json` 文件中调整相关内容[^1]。 #### ### 资源导出 通过 HBuilder X 导出本地打包所需的资源文件: - 在菜单栏选择【发行】> 【原生 App - 本地打包】> 【生成本地打包 App 资源】。 - 此操作会生成一个以 APPID 命的压缩(通常命为 __UNI__XXXX),该文件即为后续 AS 打包的核心资源。 #### ### Android Studio 配置与导入 1. 解压上述生成的资源至指定目录,并将其复制到 Android Studio 工程下的特定位置。具体路径可能因模板不同而有所差异,一般位于 `app/src/main/assets/` 目录下[^2]。 2. 创建一个新的 Android Studio 项目或者直接使用官方推荐的集成工程模板(如 HBuilder 提供的 `HBuilder-Integrate-AS`)。 3. 修改新项目中的 `applicationId` 字段,使其匹配您在 UniApp 中设定的应用唯一标识符 (APPID)。 #### ### 数字签申请 为了发布正式版 APK,必须先完成数字证书的制作过程: - 利用 keytool 工具生成 keystore 文件,命令如下所示: ```bash keytool -genkeypair -v -keystore my-release-key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias my-alias ``` - 记住密码及相关参数以便稍后配置 build.gradle 文件时调用。 #### ### 构建最终 APK 一切准备就绪之后,在 Android Studio 内执行构建任务: - 依次点击导航栏上的选项:`Build` > `Build Bundle(s)/APK(s)` > `Build APK(s)`。 - 成功完成后,可通过通知区域查看生成好的 apk 文件存储地址。 --- ### 注意事项 - 若遇到编译错误,请仔细核对 Gradle 版本兼容性和依赖库冲突情况。 - 对于调试用途可选用 debug 类型;而对于分发则务必采用 release 模式的带签校验机制。 ```xml <signingConfigs> <release> storeFile file("my-release-key.jks") storePassword "your_store_password" keyAlias "my-alias" keyPassword "your_key_password" </release> </signingConfigs> ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值