Uniapp打包发行
网上教程皆有不足之处,可配合以下两个教程进行打包发行:
打包流程:https://blog.youkuaiyun.com/PIOnly/article/details/125196697(最后一部分有些步骤是多余的,有些步骤没有包含,可以参考本教程进行打包)
生成密钥库签名:https://ask.dcloud.net.cn/article/35777
需要安装到本地的应用:
- HBuilderX: https://www.dcloud.io/hbuilderx.html
我个人用的是4.45版本,下载地址:https://hx.dcloud.net.cn/Tutorial/HistoryVersion - Android Studio: https://developer.android.com/studio
一、Uniapp本地打包
- 点击HBuilderX内的 发行 -> App-Android/iOS-本地打包 -> 生成本地打包App资源

- 打开当前项目下的unpackage/resources看到以下文件夹,这个窗口留着先

-
前往https://nativesupport.dcloud.net.cn/AppDocs/download/android.html网站下载打包sdk
-
解压后使用android studio打开Integrate-AS文件夹

二、 申请Appkey以及密钥
-
没有appkey以及相对应的密钥应用便无法发行或正常使用
-
登录DCloud开发者中心(没有账号需要注册一个)https://dev.dcloud.net.cn/
-
在“应用管理>我的应用”界面可以看到自己在HBuilderX上面创建的项目(HBuilderX需要登陆与DCloud相同的账号)

-
-
此项目对应的是“新建文件夹”,如果没有的话应该是项目所有权在我手上,在项目里的manifest.json里面重新获取AppID即可
-
若重新获取了AppID,需要根据步骤一重新打包uniapp

- 点击新建文件夹后,点击上面的各平台信息

-
点击右上角新增,进入以下界面

-
需要配置以下值:
-
包名:
- 需要与发行时配置的包名一致,不会对应用命名产生影响,我每次都写为
com.android.simple
- 需要与发行时配置的包名一致,不会对应用命名产生影响,我每次都写为
-
SHA1与SHA256值:
-
点击windows+R键,输入cmd进入控制台
-
输入
keytool -genkey -alias testalias -keyalg RSA -keysize 2048 -validity 36500 -keystore test.keystore生成证书
(注:keytool是jdk库里的指令,提示keytool不是可执行的命令就是java不在环境变量里,需要自行下载jdk并配置环境变量)-
testalias是证书别名,可修改为自己想设置的字符,建议使用英文字母和数字
-
test.keystore是证书文件名称,可修改为自己想设置的文件名称,也可以指定完整文件路径
-
36500是证书的有效期,表示100年有效期,单位天,建议时间设置长一点,避免证书过期

-
-
生成完毕后输入
keytool -list -v -keystore test.keystore查看密钥
-
复制其中的SHA1与SHA256分别填写至应用信息提交即可
-
-
点击创建离线key,创建完成后点击查看

-

之后要用到
-
使用Android Studio打开HBuilder-Integrate-AS文件夹,等待一会会搭建成功

-
下面是必须要修改的步骤
-
将 assets/apps/ 里面的文件夹替换为uniapp打包的文件

-
进入manifests文件夹下的AndroidManifest.xml,替换最后一行的 android:value 为刚才DCloud网站上申请的app离线key
-

-
进入assets/data里的dcloud_control.xml, 把appid改为刚才替换的打包文件夹的名称

-
最后一步要替换的就是好多教程都没有提到的,首先找到刚刚创建的密钥文件,文件路径为
C:\Users\user name\testalias.keystore,将此文件放到app目录下,在我这里就是HBuilder-Integrate-AS\simpleDemo文件夹下 -
进入Module的build.gradle文件,修改以下条目:

- keyAlias - 密钥名称
- keyPassword & storePassword - 密钥密码
- storeFile file - 密钥文件名称
-
修改完成后点击菜单栏的build -> Generate App Bundles or APKs -> Generate APK,等待build完成就好了,文件默认存储于
HBuilder-Integrate-AS\simpleDemo\build\outputs\apk
1万+

被折叠的 条评论
为什么被折叠?



