likes
comments
collection
share

uniapp -- 离线打包(限制网络情况)

作者站长头像
站长
· 阅读数 52

“我报名参加金石计划1期挑战——瓜分10万奖池,这是我的第1篇文章,点击查看活动详情

背景

为那些在公司桌面或者云桌面,被限制网络的情况下,这时候的离线打包是难度巨大,特此记录踩坑过程,不足之处,评论区见

准备工作

下载android studio和hbuilderX

hbuilderX下载地址:www.dcloud.io/hbuilderx.h… android studio下载地址:developer.android.google.cn/studio/arch…

下载离线sdk

地址:nativesupport.dcloud.net.cn/AppDocs/dow…

申请证书

教程:ask.dcloud.net.cn/article/357…

builderX申请白名单

ext.dcloud.net.cn/

account.dcloud.net.cn

dev.dcloud.net.cn

stream.dcloud.net.cn

ide.liuyingyong.cn

ide.dcloud.io

update.liuyingyong.cn

:以上均为https

其他准备工作

Appid, Appkey, 包名

hbuilderX配置生成

登录账号

在限制网络情况下,要先配置白名单才可以登录

生成本地资源

uniapp -- 离线打包(限制网络情况)

uniapp -- 离线打包(限制网络情况) 存在于unpackage/resources/下面

as的配置

初始化配置

加载本地gradle包

下载地址:services.gradle.org/distributio…

uniapp -- 离线打包(限制网络情况) 我们项目采取6.5版本,大家按需修改

然后as切换成Android模式,修改distributionUrl的路径

uniapp -- 离线打包(限制网络情况)

修改maven镜像

切换为Project模式,打开build.gradle文件 这个可以放公司自己搭的maven私库,再把所需要的包上传上去,但是刚好我公司云桌面配置默许了阿里的镜像,那么直接配置阿里的maven镜像即可

uniapp -- 离线打包(限制网络情况) maven { url 'maven.aliyun.com/repository/…' }

maven{ url 'maven.aliyun.com/repository/…

项目配置

导入第一步下载项目

uniapp -- 离线打包(限制网络情况)

uniapp -- 离线打包(限制网络情况)

替换本地资源

uniapp -- 离线打包(限制网络情况)

修改dcloud_control.xml

uniapp -- 离线打包(限制网络情况)

将data下的dcloud_control.xml内的appid清空,更换成自己uni-app的应用标识AppID

修改Androidmanifest.xml

修改appkey

uniapp -- 离线打包(限制网络情况)

修改包名

uniapp -- 离线打包(限制网络情况)

修改build.gradle

uniapp -- 离线打包(限制网络情况)

权限配置

打开Androidmanifest.xml添加权限语句,这些权限可以在hbuilder的manifest.json中找到,复制过来即可

uniapp -- 离线打包(限制网络情况)

uniapp -- 离线打包(限制网络情况)

其他配置说明

uniapp -- 离线打包(限制网络情况)

uniapp -- 离线打包(限制网络情况)

as打包apk和自定义基座

打包apk

uniapp -- 离线打包(限制网络情况)

uniapp -- 离线打包(限制网络情况)

uniapp -- 离线打包(限制网络情况) 点击finish即可生成apk,路径如下

uniapp -- 离线打包(限制网络情况)

自定义基座

HubliderX超过40m就会限制,为此我们可以as来打一个基座再放到hbuilderX即可

替换

在官方离线sdk中的SDK目录下libs目录找到 debug-server-release.aar 文件并复制到项目中的lib文件

uniapp -- 离线打包(限制网络情况)

修改dcloud_control.xml

uniapp -- 离线打包(限制网络情况)

点击build bundle

uniapp -- 离线打包(限制网络情况)

生成的路径为:build/outputs/apk/debug

uniapp -- 离线打包(限制网络情况)

替换自定义基座

Hbuilder的自定义基座在unpackage/debug路径

uniapp -- 离线打包(限制网络情况)

用as的debug.apk替换即可,这样就不用采用hbuilder的基座生成,没有40m的限制

转载自:https://juejin.cn/post/7138971130639056909
评论
请登录