安卓离线打包

UniApp Android 离线打包完整

适用于 UniApp 开发者快速掌握 Android 平台离线打包流程,摆脱 HBuilderX 在线云打包依赖,提升构建效率与安全性。

为什么需要离线打包

对于我个人,如果在Hbuilder云打包一次需要的时间太长而且次数有限,厌倦了云打包的速度,所以决定自己实现一个离线打包。

首先需要下载uni官方的离线打包项目

点击进入官网下载

进入工程可以看到如下文件夹

build.gradle中配置签名

bash 复制代码
 buildToolsVersion '35.0.0'
    namespace 'com.shuishenhuole.test'
    defaultConfig {
        applicationId "com.shuishenhuole.test"
        minSdkVersion 21
        targetSdkVersion 33
        versionCode 1
        versionName "1.0"
        multiDexEnabled true
        compileOptions {
            sourceCompatibility JavaVersion.VERSION_1_8
            targetCompatibility JavaVersion.VERSION_1_8
        }
    }
signingConfigs {
        config {
            keyAlias '签名别名'
            keyPassword '签名密码'
            storeFile file('xxx/xxx/xxx.keystore或xxx/xxx/xxx.jks') // 路径为相对路径或绝对路径
            storePassword '密码'
            v1SigningEnabled true //兼容v1
            v2SigningEnabled true //兼容v2
        }
}

如果使用的是云签名

密码=签名密码

applicationId 为应用包名

namespace 最好也填写包名

Hbuilder打包

打包hbuilder生成打包文件

bash 复制代码
[HBuilder] 10:37:42.024 编译器版本:4.87(vue3)
[HBuilder] 10:37:42.032 正在编译中...
[HBuilder] 10:38:27.104 项目 test 编译成功。
[HBuilder] 10:38:27.161 项目 test 正在导出...
[HBuilder] 10:38:27.219 项目 test 导出成功,路径为:C:\Users\shuishenhuole\Desktop\yd\test\unpackage\resources

将打包之后的文件放在assets/apps文件中(Android项目中)

配置dcloud_control.xml

assets/data/dcloud_control.xml

appid=填写自己的app包名

xml 复制代码
<hbuilder>
<apps>
    <app appid="__UNI__F474772" appver=""/>
</apps>
</hbuilder>

配置AndroidManifest.xml

android:value=填写自己的appkey

xml 复制代码
<meta-data
    android:name="dcloud_appkey"
    android:value="73afb5b0a3d2c3c70805be819edca799" />

配置图标

icon.png为应用的图标。

push.png为推送消息的图标。

splash.png为应用启动页的图标。

如何生成apk文件?

如需要更多的配置可以查阅如下官方文档
官方文档
配置apikey文档

相关推荐
北漂Zachary1 天前
四大编程语言终极对比
android·java·php·laravel
学习使我健康1 天前
Android App 启动原理
android·android studio
TechMix1 天前
【性能工具】atrace、systrace、perfetto抓取的trace文件有何不同?
android·性能优化
张小潇1 天前
AOSP15 WMS/AMS系统开发 - 窗口层级源码分析
android·前端
努力努力再努力wz1 天前
【MySQL入门系列】掌握表数据的 CRUD:DML 核心语法与执行逻辑解析
android·开发语言·数据结构·数据库·c++·b树·mysql
zh_xuan1 天前
Android gradle任务
android·gradle构建
Grackers1 天前
Android Perfetto 系列 10:Binder 调度与锁竞争
android·binder
李白你好1 天前
Android 自动化渗透测试指令生成
android·自动化
CeshirenTester2 天前
Claude Code 不只是会写代码:这 10 个 Skills,才是效率分水岭
android·开发语言·kotlin
朝星2 天前
Android开发[2]:Flow
android·kotlin