您的位置:首页 > 汽车 > 时评 > 【uniapp离线打包】(基于Android studio)

【uniapp离线打包】(基于Android studio)

2024/12/26 21:25:57 来源:https://blog.csdn.net/xzzteach/article/details/140800350  浏览:    关键词:【uniapp离线打包】(基于Android studio)

文章目录

    • uniapp打包官方教程入口
    • 一、准备工作(工具三大件)
      • Android Studio版本推荐
    • 二、准备工作(Android壳和uniapp包)
      • 导入Android壳
      • 生成uniapp包
      • 将uniapp包导入android壳
      • 降低jdk版本
    • 三、准备工作(证书)
      • 准备Android平台离线签名证书(使用AndroidStudio图形化界面)
      • 准备Android平台离线签名证书(使用jak命令)
    • 四、修改配置参数
      • build.gradle配置
      • data/dcloud_control.xml修改appid
      • build.gradle修改包名
      • build.gradle文件的android节点下配置应用的签名信息
      • AndroidManifest.xml文件中配置appkey(官网获取appkey)
    • 五、打包apk(Android studio)

uniapp打包官方教程入口

https://nativesupport.dcloud.net.cn/AppDocs/usesdk/android.html
按如下操作即可进入:
在这里插入图片描述

一、准备工作(工具三大件)

  1. Android Studio 下载地址:Android Studio官网
    在这里插入图片描述

Android Studio版本推荐

下载地址:
https://download.csdn.net/download/xzzteach/89611153

  • 随着Android Studio的不断发展,版本众多,选择一个适合自己需求的版本变得尤为重要。本文将为您推荐适合不同需求的Android Studio版本。

  • 初学者推荐版本:对于刚开始接触Android开发的初学者,建议选择稳定性好、功能齐全的版本。考虑到Android Studio 4.2.1也就是android-studio-ide-202.7351085-windows.exe具有更好的稳定性和性能,同时提供了更多的功能和改进,支持新的Android SDK技术,因此这个版本是初学者的理想选择。

  • 开发企业应用推荐版本:在实际企业开发中,推荐使用稳定版的Android Studio。例如,Android Studio Arctic Fox 2020.3.1是稳定版本,适合企业级开发。

  • 追求新功能推荐版本:对于追求新功能的用户,可以选择最新的预览版或Canary版。这些版本通常包含了一些新的功能和改进,可以让您提前体验到未来的Android Studio功能。

  • 跨平台开发推荐版本:如果您需要进行跨平台开发,可以考虑选择支持多平台的Android Studio版本。这些版本通常会提供更多的插件和工具,帮助您更轻松地实现跨平台开发。

总之,选择适合自己的Android Studio版本需要根据自己的需求和实际情况来决定。无论您是初学者还是资深开发者,都可以在Android Studio的不同版本中找到适合自己的工具和功能。

  1. HBuilderX(确保升级到最新版本)
    在这里插入图片描述

  2. App离线SDK下载:最新android平台SDK下载
    在这里插入图片描述

3.1.10版本起需要申请Appkey,具体请点击链接

SDK目录说明
|-- HBuilder-Hello App离线打包演示应用
|-- HBuilder-Integrate-AS 集成uni-app的最简示例
|-- SDK SDK库文件目录
|-- Feature-Android.xls Android平台各扩展Feature API对应的详细配置
|-- Readme.txt 版本说明文件及注意事项
|-- UniPlugin-Hello-AS uni原生插件开发示例

二、准备工作(Android壳和uniapp包)

导入Android壳

在这里插入图片描述

在这里插入图片描述
再后面的弹出窗选择release

生成uniapp包

HBuilder执行如下操作:
在这里插入图片描述

将uniapp包导入android壳

在这里插入图片描述

降低jdk版本

在这里插入图片描述
因为笔者使用的AndroidStudio版本过高,需要将jdk版本降到1.8
在这里插入图片描述
在这里插入图片描述

三、准备工作(证书)

jdk1.8请用命令方式高版本的用AndroidStudio图形化界面

准备Android平台离线签名证书(使用AndroidStudio图形化界面)

在实际测试中,可能我使用的AS版本过高,用方法二做的证书总是提示错误,于是,最后我是使用使用AndroidStudio图形化界面来生成的证书,下面开始:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

准备Android平台离线签名证书(使用jak命令)

  • Android平台打包发布apk应用,需要使用数字证书(.keystore文件)进行签名,用于表明开发者身份。

  • Android证书的生成是自助和免费的,不需要审批或付费。

  • 可以使用JRE环境中的keytool命令生成。以下是windows平台生成证书的方法:

  • 安装JRE环境(推荐使用JRE8环境,如已有可跳过)
    可从Oracle官方下载jre安装包:https://www.oracle.com/java/technologies/downloads/#java8

下面以Windows平台,jre安装目录为C:\_http\jdk1.8.0_201为例亲测只能使用201版本才有md5,笔者电脑java太新,所以不设环境变量,直接使用绝对路径,实际操作时请修改为自己安装目录

  • 生成签名证书
    使用keytool -genkey命令生成证书:
 C:\_http\jdk1.8.0_201\bin\keytool.exe -genkey -alias msjb -keyalg RSA -keysize 2048 -validity 36500 -keystore msjb.keystore
  • testalias是证书别名,可修改为自己想设置的字符,建议使用英文字母和数字
  • test.keystore是证书文件名称,可修改为自己想设置的文件名称,也可以指定完整文件路径
  • 36500是证书的有效期,表示100年有效期,单位天,建议时间设置长一点,避免证书过期
    回车后会提示:

在这里插入图片描述

在这里插入图片描述

注意:上述信息填写要规范,乱填有可能会影响应用上架应用市场。

查看证书信息
可以使用以下命令查看:

 C:\_http\jdk1.8.0_201\bin\keytool.exe -list -v -keystore msjb.keystore

Enter keystore password: //输入密码,回车
会输出以下格式信息:
在这里插入图片描述

其中证书指纹信息(Certificate fingerprints):

  • MD5
    证书的MD5指纹信息(安全码MD5)
  • SHA1
    证书的SHA1指纹信息(安全码SHA1)
  • SHA256
    证书的SHA256指纹信息(安全码SHA245)
    在这里插入图片描述
    在这里插入图片描述
    官网方法如下:
    https://ask.dcloud.net.cn/article/35777

四、修改配置参数

build.gradle配置

data/dcloud_control.xml修改appid

文件中的appid修改成uniapp的appid
在这里插入图片描述

build.gradle修改包名

在这里插入图片描述

build.gradle文件的android节点下配置应用的签名信息

signingConfigs {config {keyAlias '签名别名'keyPassword '签名密码'storeFile file('xxx/xxx/xxx.keystore或xxx/xxx/xxx.jks') // 路径为相对路径或绝对路径storePassword '密码'v1SigningEnabled true //兼容v1v2SigningEnabled true //兼容v2}
}

AndroidManifest.xml文件中配置appkey(官网获取appkey)

登录https://dev.dcloud.net.cn/,点击当前所需要打包操作的应用名称,进入各平台信息中,点击新增,配置AndroidApp信息
在这里插入图片描述

五、打包apk(Android studio)

在这里插入图片描述

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com