MUI、HBuilderX、H5+开发APP本地打包(Android)

您所在的位置:网站首页 腾讯文件打包图片步骤 MUI、HBuilderX、H5+开发APP本地打包(Android)

MUI、HBuilderX、H5+开发APP本地打包(Android)

2024-07-17 21:36:29| 来源: 网络整理| 查看: 265

此文基于MUI、HBuilderX、H5+开发的APP本地打包,不适用uniapp。

同款iOS的在这里: MUI、HBuilderX、H5+开发APP本地打包(iOS)

为什么本地打包

使用HBuilderX开发完项目后打包-发布, 通常情况下直接选择【app云打包】直接在线打包然后下载安装包,简单、方便。

一般情况下这种方式满足了大部分需求,但同时也有几个问题:

1、项目代码提交官方后台(官方保证不保留任何用户代码,个人感觉也没啥问题)。2、云打包有文件大小限制,超过40M的文件打包需要提交申请,然后付费。对于我们测试某个问题,一天打包很多次也是不少的费用。

我们的APP包很大,如果云打包,不合适。所以必须自己本地打包。

工具准备开发工具 :HBuilderX(版本2.4.6.20191210)安卓打包SDK: [email protected]_20191211,版本要和HBuilderX保持一致,一般都是更新到官方最新版就可以了。打包工具:Android Studio 3.5.2操作步骤

1、Android Studio创建一个工程,删除如下无用文件

1_新建工程.png

2、复制SDK->libs->lib.5plus.base-release.aar文件,及其他所需的库文件到原生工程工程的app->libs目录下

2_导入sdk.png

3、新建如下目录层级,导入有HBuilderx导出的APP资源文件

导入资源目录.png

apps.xxxx.www: xxx为HB中appid,appid为应用资源manifest.json文件中id节点的值,必须保持一致否则APP无法运行。

4、导入data目录文件,并修改dcloud_control.xml文件的apps->app->appid属性的值改为当前应用manifest.json文件id节点的值

导入data文件.png

5、替换res->drawble目录应用的图标文件

修改图标.png

6、修改配置文件

AndroidManifest.xml,

build.gradle,

这一步至关重要,稍有不慎APP或无法运行或 闪退、或相关功能不起作用、无法获取相关权限。最终配置如下;

AndroidManifest.xml

代码语言:javascript复制

使用到的权限:

访问网络访问相机和相册存储权限应用内安装权限

build.gradle

代码语言:javascript复制apply plugin: 'com.android.application' android { compileSdkVersion 29 defaultConfig { applicationId "com.gech.app" minSdkVersion 25 targetSdkVersion 29 versionCode 108 versionName "1.0.8" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" multiDexEnabled true } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } } lintOptions { disable 'GoogleAppIndexingWarning' checkReleaseBuilds false abortOnError true } } repositories { flatDir { dirs 'libs' } } dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) implementation fileTree(include: ['*.aar'], dir: 'libs') implementation 'androidx.appcompat:appcompat:1.1.0' testImplementation 'junit:junit:4.12' androidTestImplementation 'androidx.test.ext:junit:1.1.1' androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0' // implementation 'androidx.multidex:multidex:2.0.0' // implementation 'androidx.appcompat:appcompat:1.0.0' implementation 'androidx.recyclerview:recyclerview:1.0.0' implementation 'com.nineoldandroids:library:2.4.0' implementation 'com.github.bumptech.glide:glide:4.5.0' }

引入第三方库、APP配置相关、文件依赖。

遇到的问题及解决方法

遇到的问题大多都是权限配置的问题,刚开始不太熟悉用到一些功能也想不起去配置权限。

1、访问相册时没有返回按钮及导航栏相关,默认HB选择图片的样式很不友好。

解决:

libs引入如下文件

选择相册.png

application中设置如下:

代码语言:javascript复制

2、选择图片点击相机无法弹出,没有提示获取访问相机的权限请求。

解决:

application引入权限即可

代码语言:javascript复制

3、APP版本升级时,下载新版本无法安装,权限问题。

代码语言:javascript复制

同时application添加provider

代码语言:javascript复制

4、无法js文件加密

在线打包时可以选择js原生混合实现主要的js文件加密,由于官方加密算法的保密限制离线打包不在支持,目前还没有找到合适的实现方案。

总结类似本地打包操作这种严重依赖平台的操作要多阅读官方文档,但是由于版本区别、文档更新不及时错误很难避免,实际遇到问题要时刻保持关注,多方搜集。使用系统功能时如果不起作用,考虑是否需要申请用户权限Android Studio 打包时注意gradle版本问题,由于网络问题可能会出现编译失败等问题,直接下载到本地使用更加方便。HB的版本和离线打包的sdk的打包尽量保持一致,如果不一致可能会出现莫名其妙的问题。参考Android平台本地(离线)打包指南 - Android Studio使用新版本5+SDK创建最简Android原生工程(Android studio)HBuilderX中配置JS/NVUE文件原生混淆加密

我是Light413,一名iOS开发者,喜欢前端及后台开发。我在简书,简书就是我的阵营,我喜欢在这里学习,在这里分享。以后文章会不断的更新,介绍关于iOS开发学习总结 , 介绍基于H5开发中感悟记录总结。感觉有用就点赞哈,喜欢就大胆的关注。



【本文地址】

公司简介

联系我们

今日新闻


点击排行

实验室常用的仪器、试剂和
说到实验室常用到的东西,主要就分为仪器、试剂和耗
不用再找了,全球10大实验
01、赛默飞世尔科技(热电)Thermo Fisher Scientif
三代水柜的量产巅峰T-72坦
作者:寞寒最近,西边闹腾挺大,本来小寞以为忙完这
通风柜跟实验室通风系统有
说到通风柜跟实验室通风,不少人都纠结二者到底是不
集消毒杀菌、烘干收纳为一
厨房是家里细菌较多的地方,潮湿的环境、没有完全密
实验室设备之全钢实验台如
全钢实验台是实验室家具中较为重要的家具之一,很多

推荐新闻


图片新闻

实验室药品柜的特性有哪些
实验室药品柜是实验室家具的重要组成部分之一,主要
小学科学实验中有哪些教学
计算机 计算器 一般 打孔器 打气筒 仪器车 显微镜
实验室各种仪器原理动图讲
1.紫外分光光谱UV分析原理:吸收紫外光能量,引起分
高中化学常见仪器及实验装
1、可加热仪器:2、计量仪器:(1)仪器A的名称:量
微生物操作主要设备和器具
今天盘点一下微生物操作主要设备和器具,别嫌我啰嗦
浅谈通风柜使用基本常识
 众所周知,通风柜功能中最主要的就是排气功能。在

专题文章

    CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭