安卓离线打包

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文档

相关推荐
鹏晨互联6 小时前
【Compose vs XML:边框内外间距的实现对比】
android·xml
Android系统攻城狮6 小时前
Android tinyalsa深度解析之pcm_plugin_write调用流程与实战(一百七十九)
android·pcm·tinyalsa·android16·音频进阶·android音频进阶
ID_180079054736 小时前
除了JSON,淘宝店铺商品API接口还支持哪些数据格式?
android·数据库
KillerNoBlood6 小时前
2026移动端跨平台开发面经总结
android·算法·flutter·ios·移动开发·鸿蒙·kmp
消失的旧时光-19437 小时前
Android / IoT 面试复盘总结:从 MQTT、TLS 到 JWT 权限体系(标准答案 + 工程理解 + 延伸知识链)
android·物联网·面试
林多8 小时前
【Android】 GPU过度绘制实现原理
android·gpu·性能·实现原理·过度绘制·overdraw
薄荷椰果抹茶8 小时前
手机端Obsidian安装与同步全攻略
android
醇氧8 小时前
CentOS 7安装 mysql-8.0.27-1.el7.x86_64.rpm 安装包
android·mysql·centos
号码认证服务8 小时前
给用户打电话,怎么在对方手机显示为“XX证券”?号码认证办理步骤
android·运维·服务器·ios·智能手机·iphone·webview
Kapaseker8 小时前
我为什么让 Toast 多弹了一次
android·kotlin