【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)

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/391034.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SpringSecurity-1(认证和授权+SpringSecurity入门案例+自定义认证+数据库认证)

SpringSecurity 1 初识权限管理1.1 权限管理的概念1.2 权限管理的三个对象1.3 什么是SpringSecurity 2 SpringSecurity第一个入门程序2.1 SpringSecurity需要的依赖2.2 创建web工程2.2.1 使用maven构建web项目2.2.2 配置web.xml2.2.3 创建springSecurity.xml2.2.4 加载springSe…

50 选择结构

常见的选择结构有单分支选择结构、双分支选择结构、多分支选择结构及嵌套的分支结构,也可以构造跳转表来实现类似的逻辑。循环结构和异常处理结构中也可以实现带有 else 子句,可以看作特殊形式的选择结构。 所有的 Python 合法表达式都可以作为条件表达…

一篇文章让你搞懂原码,反码,补码!

目录 1.机器数和机器数真值 1.1机器数 1.2机器数的真值 2.原码,反码,补码的计算方法 2.1原码 2.2反码 2.3补码 3.为什么要使用反码和补码? 3.1原码不能让符号位参与运算的问题: 3.2为了解决原码作减法,引入…

SAP支出管理,企业成本控制的智能钥匙

在企业运营中,有效的支出管理是确保财务健康和提升竞争力的关键。SAP支出管理系统作为企业资源规划的核心组成部分,提供了一套全面的解决方案,帮助企业实现成本控制、风险管理和合规性监督。实现支出管理流程自动化,并主动管理更多…

python爬虫预备知识三-序列化和反序列化

序列化和反序列化 序列化是为了将内存中的数据保存在磁盘上或者用于传输,实现程序状态的保存和共享。反序列化反之。 序列化后的变量再被反序列化回来之后,两者之间已经没有任何关系。 序列化后的文件是在不同程序或者说不同语言之间传递数据的关键方…

分享5款.NET开源免费的Redis客户端组件库

前言 今天大姚给大家分享5款.NET开源、免费的Redis客户端组件库,希望可以帮助到有需要的同学。 StackExchange.Redis StackExchange.Redis是一个基于.NET的高性能Redis客户端,提供了完整的Redis数据库功能支持,并且具有多节点支持、异步编…

[Git][分支管理][上]详细讲解

目录 1.理解分支2.创建分支3.切换分支4.合并分支5.删除分支 1.理解分支 感性理解:分支可以理解为平行宇宙,但是在用户需要的时候,可以将两个平行宇宙合并,此时两个平行宇宙的效果将会"叠加"理性理解:每次提…

TCP 和 UDP 之间的区别?

从 连接,可靠性,传输方式等方面: TCP 是面向连接的协议,在发送数据的时候需要先通过 TCP 的三次握手,而 UDP 是无连接的协议,可以直接传输数据TCP 通过超时重传,流量控制和拥塞控制等方法保障了…

使用JWT的SpringSecurity实现前后端分离

1. SpringSecurity完成前后端完全分离 分析: 前后端分离:响应的数据必须为JSON数据,之前响应的是网页 需要修改的代码有: 登录成功需要返回json数据登录失败需要返回json数据权限不足时返回json数据未登录访问资源返回json数据 1.…

二叉树的前序遍历 - 力扣(LeetCode)C语言

144. 二叉树的前序遍历 - 力扣(LeetCode)(点击前面链接即可查看题目) 一、题目 给你二叉树的根节点 root ,返回它节点值的 前序 遍历。 示例 1: 输入:root [1,null,2,3] 输出:[1,2,3]示例 2: …

文心智能体【MBTI速测小精灵】:趣味速测,精准解析你的性格密码!

文章目录 一、文心智能体平台是什么?二、创建文心智能体智能体创建智能体调试分析智能体基础配置智能体高级配置智能体高级调试 三、文心智能体发布四、文心智能体体验总结 一、文心智能体平台是什么? AgentBuilder文心智能体平台是基于文心大模型的智能…

适用于 Android 的 6 大视频恢复软件榜单 – 恢复您的珍贵回忆!

失去珍贵的回忆可能是一种令人心碎的经历,尤其是在您的 Android 设备上拍摄视频时。无论是由于意外删除、格式化、系统崩溃还是任何其他不可预见的情况,丢失珍贵视频的想法都会造成巨大的痛苦。但不要担心!在这篇博文中,我们将深入…

临床随机对照试验中的分层问题及其解决方法

在临床随机对照试验(Randomized Controlled Trials, RCTs)中,分层问题(Stratification Issues)是影响研究结果有效性的重要因素之一。RCTs是评估医疗干预效果的金标准,旨在通过随机分组和对照来消除干扰因素…

在亚马逊云科技AWS上利用ElasticSearch和RAG搭建个性化推荐系统

简介: 小李哥将继续每天介绍一个基于亚马逊云科技AWS云计算平台的全球前沿AI技术解决方案,帮助大家快速了解国际上最热门的云计算平台亚马逊云科技AWS AI最佳实践,并应用到自己的日常工作里。 本次介绍用当下热门的RAG和大语言模型&#xf…

[WUSTCTF2020]朴实无华1

打开题目 扫目录用dirsearch扫,为节省建议只扫常见的目录,配置是: ./dirsearch.py -e bak,zip,txt,tgz,php -u http:..... -s 3 -t 20 访问一下 根据提示,再访问一次 提示不在这,抓包看看 根据提示,改ge…

页面根据sse返回的流,逐句展示内容,达到gpt效果

之前的文章里,我写到了关于怎么获取sse中的流,但是缺少逐句展示的效果,这次来补齐。 比如这种,实现难点在于,当返回的markdown语法,不是完整的语句时,展示的代码块会错乱。 实现代码 app.vue …

P10477 题解

题目传送门 题目传送门(洛谷) Step1 理解题意 一共有 T T T 组数据有一个地铁,有一个中心车站(即为根),有一个人从中心车站出发。对于每组数据,给定两个同样长度的01串 s 1 s_1 s1​ , s …

内网安全:多种横向移动方式

1.MMC20.Application远程执行命令 2.ShellWindows远程执行命令 3.ShellBrowserWindow远程执行命令 4.WinRM远程执行命令横向移动 5.使用系统漏洞ms17010横向移动 DCOM: DCOM(分布式组件对象模型)是微软的一系列概念和程序接口。它支持不同…

C语言--函数

1. 函数定义 语法: 类型标识符 函数名(形式参数) {函数体代码 } (1)类型标识符 --- 数据类型(函数要带出的结果的类型) 注:数组类型不能做函数返回结果的类型,如果函…

Tomcat 8.5 下载、安装、启动及各种问题

🥰🥰🥰来都来了,不妨点个关注叭! 👉博客主页:欢迎各位大佬!👈 本期内容主要介绍 Tomcat 8 的安装,以及可能会遇到的问题 文章目录 1. Tomcat 安装2. 可能会遇到的问题2.…