uniapp 离线打包
本文章需要用到的相关文件资料
教程开始
1.uniapp需要登录账号 2.如果在使用Android Studio 的时候出现下方提示,要选择Sync now >
首先安装打开 Android Studio 左上角 File ——>open——>选择 Android 离线 SDK 里面的 HBuilder-Integrate-AS 
然后左上角 File——>Settings——>Build,Execution,Deployment——>BuildTools——>Gradle,找到右面页面最下面的 Gradle JDK:选择自己下载的 jdk1.8
接下来打开uniapp 官网,点击左上角的 为开发者而生
在跳转的页面点击最后边的开发者后台 
找到你想要打包的那一个项目 
在跳转的页面找到 Android 云端证书,选择生成,然后下载到桌面
点击 各平台信息,这里应该是没有东西的,选择右上角的新增,包名根据自己的需要自行输入格式一般是域名反过来**<com.xxx.www>**
填入三个相关信息,这些信息可以在Android 云端证书页面点击证书详情看到
接下来在各平台信息页面找到离线打包 key,点击后获取appkey

我们用hbuikder打开你的项目,上面 发行——>原生 app——>本地打包——>生成本地打包 app 资源
在下方控制台可以看到项目导出的路径,点击可进入文件夹
点击路径位置的resources,并复制对应文件 
我们返回Android Studio,将 simpleDemo\src\main\assets\apps 下面的 UNIA 替换成我们自己的文件
我们这里切换成Project,然后将我们下载的证书放在根目录下 


接下来我们需要修改几个文件内容
我们切回Android,打开AndroidManifest.xml,将 package 修改成自己项目的包名,然后右边代码划到最底部,将 android:value 修改成自己的appkey


接在选择dcloud_control.xml文件,在appid那里填入自己的appid
我们再找到strings.xml文件,将 app_name 修改为自己项目的名称 
找到下方文件,修改想用内容,我会将要修改的地方以及修改成上面给你们用图片的方式指出 

下方还需要配置
别名
密码: 

证书的绝对路径如何拿到:
左上角先切换到 Project,然后根据图片进行操作,右键 Copy Path/Reference,在弹出来的选项中选择 Absolute Path,然后粘贴到对应的地方就行 

插件市场下载 uni-app 插件(此处以 RichAlert 为例)
插件资源配置
s 将下载的插件解压,将插件中 android 目录下的 aar/jar 文件放入 libs 下,其余文件参考插件文档放入指定文件夹中

在 assets 目录下创建 dcloud_uniplugins.json 文件
插件配置信息请参考插件配置文档或插件配置文件 package.json 关于 package.json 请参考:Android uni-app 原生插件开发文档
{
"nativePlugins": [
{
"plugins": [
{
"type": "module",
"name": "DCloud-RichAlert",
"class": "uni.dcloud.io.uniplugin_richalert.RichAlertWXModule"
}
]
}
]
}
uni-app 离线打包 APK 体积比云打包大的原因
因为选择了多个 ndk 架构
只要在 build.gradle 文件中找到 ndk 节点,添加 abiFilters 'armeabi-v7a'即可
android {
ndk {
abiFilters 'x86', 'armeabi-v7a', 'arm64-v8a'
}
}