本文档离线打包只针对安卓项目离线打包,IOS离线打包不在本文档的介绍之内。本文档介绍的离线打包为使用Android Studio作为打包工具介绍,本文档不介绍Android Studio的安装,如果您的电脑没有安装Android Studio请自行安装
您可以通过本文档的离线打包步骤成功离线打包,如在打包过程中有任何问题可与作者联系,作者将协助您完成离线打包工作
2.打包工具
Android Studio
离线打包需要用到Android Studio开发工具,如果您的电脑没有安装,可通过以下链接下载并安装
https://developer.android.google.cn/studio?hl=zh-cn
这里不做安装介绍,请自行安装
uniapp离线SDK
您可以通过以下链接下载uniapp的最新版的离线SDKhttps://nativesupport.dcloud.net.cn/AppDocs/download/android.html如下图所示将下载后的文件解压复制出我们需要的打包文件,如下图所示上图中的HBuilder-Integrate-AS为我们需要的离线打包文件夹
HBuilder-Integrate-AS
您可以将上述文件夹复制到其他目录中,本项目将文件复制到D:\document\Android\AndroidStudioProjects目录下
D:\document\Android\AndroidStudioProjects
然后用下载的Android Studio打开这个工程,打开过程中会进行依赖安装,安装过程中等待就可以了,如果安装有任何问题可以联系作者帮忙解决,依赖安装完毕后项目工程界面如下图所示在最底部的Build菜单中的控制台,如果出现BUILD SUCCESSFUL就代表项目启动成功,如果不是请检查依赖安装问题,如下图:以上是我们需要准备的打包工具,下一节我们将介绍如何配置离线打包
Build
BUILD SUCCESSFUL
这一步非常重要,只有生成keystore文件才能通过DCloud开发者中心创建离线打包的key,否则就算整合到了安卓工程项目也是不能运行的首先选择Android Studio的创建keystore文件的菜单如下图:会出现以下弹窗此时选择apk后点击next,出现以下弹窗选择Create new来创建新的keystore文件,如图key store path为要生成的keystore的文件路径,本例以D:\document\Android\AndroidStudioProjects\HBuilder-Integrate-AS\simpleDemo路径为例,不要选择后面的文件夹,直接输入即可如:D:\document\Android\AndroidStudioProjects\HBuilder-Integrate-AS\simpleDemo\myappkey.keystorePassword和Confirm为密码和确认密码,在配置signingConfigs时需要用到Alias为别名,在配置signingConfigs时需要用到Key下面的Password和Confirm为密码和确认密码,在配置signingConfigs时需要用到其他的信息自己随便填写就可以,如图:所有的信息填写完毕后点击OK,此时会返回上一个弹窗,然后取消上一个弹窗就可以了,生成的keystore文件如图:
apk
next
Create new
key store path
D:\document\Android\AndroidStudioProjects\HBuilder-Integrate-AS\simpleDemo
D:\document\Android\AndroidStudioProjects\HBuilder-Integrate-AS\simpleDemo\myappkey.keystore
Password
Confirm
signingConfigs
Alias
OK
将simpleDemo的build.gradle文件中的signingConfigs修改成自己填写的keystore内容,如图:再次点击Sync Now编译
simpleDemo
build.gradle
Sync Now
选择下图所示内容查看数据,如图:在控制栏中找到生成的keystore数据信息,如图:下一步将通过MD5,SHA1、SHA-256配置离线打包的key
此时我们的示例工程项目还不能运行,需要配置dcloud_appkey才能运行我们的项目,通过HBuilderX来创建一个我们的示例工程,这里我们就不详细介绍了,我们就以已经创建的uniapp示例工程中来介绍我们需要进入DCloud的开发者中心去配置秘钥,可以通过下图进入开发者中心在开发者中心的应用列表中选择你的应用进入到应用信息页面,在应用信息页面中点击各平台信息菜单进入到创建离线打包key的页面如图:然后点击新增按钮创建离线打包的key,填写的信息按照生成keystore文件的内容填写,如图:其中包名自己填写即可,包名也是需要在安卓工程中配置的
各平台信息
新增
将上面填写的包名配置到simpleDemo的build.gradle中如图:再次执行Sync Now点击应用信息的提交就创建了一个安卓平台的应用如图:此时需要创建离线打包的key,点击离线打包key下面的创建按钮来生成离线打包的key,如图:点击创建即可在列表中点击查看按钮查看当前生成的离线打包的key,如图:复制Android后面的md5值到安卓工程中,如图:
提交
创建
查看
离线打包的key是跟你的应用相关的,当前的配置只能用于这个应用,其他的应用是不可以用当前的离线打包的
此时离线的配置已经配置完成,下一步将介绍如何配置示例项目
在simpleDemo项目下的assets目录中配置appid如图:在上面的图中的app_id中配置uniapp项目的appid,如图:将上图中红色框中的内容配置到里面,配置后的数据如图:此时uniapp离线打包的配置已配置完毕
app_id
直到当前步骤是没有用到原生插件的情况下已配置完毕,如果用到原生插件的话在后面章节中将会介绍
在你的uniapp项目开发完成后选择发行>生成本地打包app资源,如图:生成完成后在控制台会有一下提示点击链接进入app资源如图:将安卓工程项目的simpleDemo中Assert下的UNI_A改为我们的appid如图将刚才生成资源复制到安卓工程的www目录下(原来www目录下的文件全部删除),如图:此时所有的工程(不包含原生插件)都已全部配置完成
发行
生成本地打包app资源
Assert
UNI_A
项目运行成功之后就可以打包apk文件了,打包apk文件操作如下选择Android Studio顶部菜单Build菜单来打包APK文件,如图所示:在弹窗的对话框中选择APK如图:点击next进行下一步,在弹出的对话框中选择已经存在的证书,如图:选择生成keystore文件,如图所示:
APK
证书密码和别名就填写你创建的证书密码和别名就可以了,一定要对应
然后点击 next继续下一步,在下面弹窗中选择release,如图所示点击Create创建,这是会自动打包apk,如图所示:打包完成后如图所示:打包的文件在release目录中,如图:下图中为可安装的可执行程序,如图:此时离线打包完毕
release
Create