当前位置: 首页 > news >正文

uniapp本地打包app安装说明

uniapp本地打包app安装说明

目录

  • uniapp本地打包app安装说明
    • 一、打包说明
    • 1.HBuilder X 生成本地打包资源
    • 2.Android Studio和App离线SDK环境准备
      • 2.1 下载Android Studio和 App离线SDK
      • 2.2 资源替换
      • 2.3 id属性值修改。
      • 2.4 添加provider信息到`AndroidManifest.xml`中的`<application>`节点
      • 2.5 包名设置。
      • 2.6 版本信息设置。
      • 2.7 证书签名信息设置。
    • 3.Appkey申请
    • 4.Apk打包
    • 5.其他问题
      • 1、uniapp离线打包Android 10上无法启动相机

一、打包说明

本文档主要说明uniapp打包成apk的步骤,仅供参考。
项目打包需要使用到HBuilder X、Android Studio和Android SDK。

1.HBuilder X 生成本地打包资源

发行 – 原生App本地打包 – 生成本地打包App资源
(注:本地打包的项目代码文件名不能含有中文,如图片资源名字等,问就是本人亲身试过,另外iconfont打包的资源有直接引用的也需要注意icon的名称)
在这里插入图片描述

2.Android Studio和App离线SDK环境准备

2.1 下载Android Studio和 App离线SDK

官网路径:https://nativesupport.dcloud.net.cn/AppDocs/usesdk/android.html
(注意:下载的Android 离线SDK与本地开发工具版本对应)
在这里插入图片描述
下载后解压得到以下内容:
在这里插入图片描述

2.2 资源替换

使用Android Studio打开目录”HBuilder-Integrate-AS”(使用“HBuilder-HelloUniApp”也可以),并将HBuilder X生成的本地打包资源替换到“src/main/assets/apps”目录下
在这里插入图片描述

2.3 id属性值修改。

dcloud_control.xmlappid值改为与manifest.json里面的id值相同,如图所示。
!!!!一共三个地方
在这里插入图片描述

2.4 添加provider信息到AndroidManifest.xml中的<application>节点

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

2.5 包名设置。

修改AndroidManifest.xmlbuild.gradle的值,如图3处位置的值要相同,这个包名要与后续在“开发者中心”设置“应用信息”时的“包名/appid/域名”一致。

在这里插入图片描述

2.6 版本信息设置。

build.gradle中的versionNameversionCode的值需要与manifest.json中的version信息对应上。
在这里插入图片描述

2.7 证书签名信息设置。

自3.1.10版本起需要申请Appkey配置项目,申请Appkey需要使用SHA1和SHA256。
可以使用Android Studio生成。
(注意:因为示例中有自己的默认配置“src/test.jks”,可以直接使用,或者自己新生成。)
在这里插入图片描述
在这里插入图片描述
填好信息,点击“ok”回到上一页,关闭,可以看到“src”目录下已经有新生成的“key.jks”文件。
在这里插入图片描述
在这里插入图片描述
然后到key.jks所在目录下打开cmd,执行命令keytool -list -v -keystore key.jks,输入刚才设置的密码,可以看到返回的证书信息,保存好证书信息。
在这里插入图片描述

3.Appkey申请

登录开发者中心(https://dev.dcloud.net.cn/pages/app/list),可以看到自己名下的uniapp项目
登录开发者中心(https://dev.dcloud.net.cn/pages/app/list),可以看到自己名下的uniapp

在这里插入图片描述
填写好信息后点击“提交”即可,然后返回“各平台信息”页面,选择对应版本信息查看appkey
在这里插入图片描述

4.Apk打包

appKey复制到AndroidManifest.xml文件对位位置,保存后就可以点击“build”进行打包了。
打包可以打成debug包或者正式包,按自己需求进行。
在这里插入图片描述
在这里插入图片描述

5.其他问题

1、uniapp离线打包Android 10上无法启动相机

uniapp项目中已经设置了摄像头权限访问,在开发测试时也可以正常使用,但是本地离线打包后就无法启动相机

解决方法:
AndroidManifest.xml中插入权限摄像机权限
在这里插入图片描述

相关文章:

uniapp本地打包app安装说明

uniapp本地打包app安装说明 目录 uniapp本地打包app安装说明一、打包说明1.HBuilder X 生成本地打包资源2.Android Studio和App离线SDK环境准备2.1 下载Android Studio和 App离线SDK2.2 资源替换2.3 id属性值修改。2.4 添加provider信息到AndroidManifest.xml中的<applicati…...

ddos造成服务器瘫痪后怎么办

在服务器遭受DDoS攻击后&#xff0c;应立即采取相应措施&#xff0c;包括加强服务器安全、使用CDN和DDoS防御服务来减轻攻击的影响。rak小编为您整理发布ddos造成服务器瘫痪后怎么办。 当DDoS攻击发生时&#xff0c;首先要做的是清理恶意流量。可以通过云服务提供商提供的防护措…...

重磅官宣!追光少年【彭禹锦】荣担任中国美育促进网amp;IPA美育中国行代言人

在美育事业蓬勃发展的今天&#xff0c;一位年仅15岁的少年以其非凡的艺术才华和积极向上的精神风貌&#xff0c;成为了万众瞩目的焦点。中国美育促进网与IPA美育中国行正式宣布&#xff0c;才华横溢、正能量满满的追光少年彭禹锦受邀担任“中国美育促进网&IPA美育中国行”代…...

Python 解析GIS的SHP文件

工作中需要处理一些GIS数据&#xff0c;在 Python 中解析地理信息系统 (GIS) 的 Shapefile (.shp) 文件通常可以通过 geopandas 库来完成。geopandas 是基于 pandas 的一个扩展库&#xff0c;它支持地理空间数据的操作和分析。 下面是一个简单的示例&#xff0c;展示如何使用 …...

大模型微调--文章3

原文地址 链接&#xff1a;https://zhuanlan.zhihu.com/p/635848732 思考题 问题1&#xff1a;p-tuning为了解决什么问题&#xff1f;&#xff08;解决&#xff09; 答案&#xff1a;该方法的提出主要是为了解决这样一个问题&#xff1a;大模型的Prompt构造方式严重影响下游任…...

游戏测试中需求分析的本质

游戏测试大不同 1.游戏功能模块介绍1.1. 登录模块1.2. 注册模块1.3. 故事情节模块1.4. 动画模块1.5. 音频模块1.6. 结束界面模块1.7. 网络模块1.8. 数据库模块 2.需求文档编写2.1需求的定义2.2需求分类2.3需求分析目标 3.测试用例编写3.1测试用例的定义3.2测试用例拆解包含测试…...

2024零基础入行软件测试全网最全攻略

很多朋友想要入行软件测试&#xff0c;但是都不知道该怎么学。 抽个时间简单的给大家说下&#xff0c;对于0基础的朋友&#xff0c;应该怎么去学习软件测试。 学习软件测试有2条路可以选。 最省事的当然是找个靠谱的培训机构去培训啦&#xff0c;你就什么都不用想了&#xff0c…...

spring-boot-starter-quartz 自动化配置解析

版本 spring-boot:3.3.4 源码解析 依赖包 spring-boot-starter-quartz 的作用为引入相关依赖&#xff1a; spring-boot-starterspring-context-supportspring-txquartz 自动化配置类 依赖&#xff1a;spring-boot-autoconfigure:3.2.4 文件&#xff1a;org.springframewo…...

DM8 数据库查询版本号以及授权到期时间SQL

1.查看操作系统信息 [root@localhost ~]# cat /etc/.kyinfo [dist] name=Kylin milestone=Server-V10-GFB-Release-ZF9_01-2204-Build03 arch=arm64 beta=False time=2023-01-09 11:04:36 dist_id=Kylin-Server-V10-GFB-Release-ZF9_01-2204-Build03-arm64-2023-01-09 11:04:…...

算法【Java】—— 双指针算法

双指针算法 常见的双指针有对撞指针&#xff0c;快慢指针以及前后指针&#xff08;这个前后指针是指两个指针都是从从一个方向出发&#xff0c;去往另一个方法&#xff0c;也可以认为是小学学习过的两车并行&#xff0c;我也会叫做同向指针&#xff09;&#xff0c;在前后指针…...

【Python快速入门和实践013】Python常用脚本-目标检测之按照类别数量划分数据集

一、功能介绍 这段代码实现了从给定的图像和标签文件夹中分割数据集为训练集、验证集和测试集的功能。以下是代码功能的总结&#xff1a; 创建目标文件夹结构&#xff1a; 在指定的根目录&#xff08;dataset_root&#xff09;下创建images和labels两个文件夹。在这两个文件夹下…...

C++ Primer 总结索引 | 第十八章:用于大型程序的工具

1、大规模应用程序的特殊要求包括&#xff1a; 在独立开发的子系统之间 协同处理错误的能力使用各种库&#xff08;可能包含独立开发的库&#xff09;进行 协同开发的能力对比较复杂的应用 概念建模的能力 对应 异常处理、命名空间和多重继承 1、异常处理 1、异常处理机制 …...

Python实现GAN(生成对抗网络)图像修复算法

目录 1. GAN简介与图像修复2. PyTorch和CUDA简介3. 数据加载与预处理3.1 安装依赖3.2 数据加载3.3 数据遮挡4. 构建GAN图像修复模型4.1 生成器4.2 判别器5. 训练GAN模型5.1 损失函数与优化器5.2 训练循环6. 测7. 实现GUI进行图像修复8. 总结与扩展扩展方向:1. GAN简介与图像修…...

java语言中的websocket

你好&#xff01;我是TensGPT&#xff0c;一个由TensGPT团队开发的AI助手。我可以帮助你了解和使用Java语言中的WebSocket。如果你有任何问题或需要示例代码&#xff0c;请告诉我。 ### 什么是WebSocket&#xff1f; WebSocket是一种在单个TCP连接上进行全双工通信的协议。它被…...

ASP.NET在线交流论坛管理系统

ASP.NET在线交流论坛管理系统 说明文档 运行前附加数据库.mdf&#xff08;或sql生成数据库&#xff09; 主要技术&#xff1a; 基于asp.net架构和sql server数据库 用户功能有个人信息管理 帖了信息管理 意见反馈信息管理 点赞管理 收藏管理 后台管理员可以进行用户管理 …...

【Kubernetes】身份认证与鉴权

一&#xff0c;认证 所有 Kubernetes 集群有两类用户&#xff1a;由Kubernetes管理的ServiceAccounts(服务账户)和(Users Accounts)普通账户。 两种账户的区别&#xff1a; 普通帐户是针对(人)用户的&#xff0c;服务账户针对Pod进程普通帐户是全局性。在集群所有namespaces…...

数据集与数据库:有什么区别?

数据集和数据库是我们在处理数据时经常听到的两个常用词。虽然它们听起来很相似&#xff0c;但它们具有不同的特征并用于不同的用途。本文深入探讨数据集和数据库之间的主要区别&#xff0c;探索了它们的结构、数据类型和各种其他功能&#xff0c;以帮助您做出明智的决定&#…...

BurpSuite

如果只能用一个Web渗透工具&#xff0c;我选BurpSuite。 Web应用程序&#xff08;Web Application&#xff09; 不同于传统的静态网站所有程序的特点是接收、处理用户输入并返回结果服务器端是个程序&#xff0c;需要程序代码实现业务功能&#xff08;java、php、asp.nse&…...

NetApp数据恢复—NetApp存储误删除文件如何恢复数据?

NetApp数据恢复环境&故障&#xff1a; 某公司一台NetApp存储&#xff0c;该存储中有24块磁盘。 工作人员误删除了NetApp存储中一个文件夹&#xff0c;文件夹中有非常重要的数据。 数据恢复工程师在现场对该存储进行了初检。虽然这个文件夹被删除很长时间&#xff0c;但是根…...

基于springboot的医药管理系统

TOC springboot194基于springboot的医药管理系统 绪论 1.1 选题背景 当人们发现随着生产规模的不断扩大&#xff0c;人为计算方面才是一个巨大的短板&#xff0c;所以发明了各种计算设备&#xff0c;从结绳记事&#xff0c;到算筹&#xff0c;以及算盘&#xff0c;到如今的…...

多云管理“拦路虎”:深入解析网络互联、身份同步与成本可视化的技术复杂度​

一、引言&#xff1a;多云环境的技术复杂性本质​​ 企业采用多云策略已从技术选型升维至生存刚需。当业务系统分散部署在多个云平台时&#xff0c;​​基础设施的技术债呈现指数级积累​​。网络连接、身份认证、成本管理这三大核心挑战相互嵌套&#xff1a;跨云网络构建数据…...

rknn优化教程(二)

文章目录 1. 前述2. 三方库的封装2.1 xrepo中的库2.2 xrepo之外的库2.2.1 opencv2.2.2 rknnrt2.2.3 spdlog 3. rknn_engine库 1. 前述 OK&#xff0c;开始写第二篇的内容了。这篇博客主要能写一下&#xff1a; 如何给一些三方库按照xmake方式进行封装&#xff0c;供调用如何按…...

Frozen-Flask :将 Flask 应用“冻结”为静态文件

Frozen-Flask 是一个用于将 Flask 应用“冻结”为静态文件的 Python 扩展。它的核心用途是&#xff1a;将一个 Flask Web 应用生成成纯静态 HTML 文件&#xff0c;从而可以部署到静态网站托管服务上&#xff0c;如 GitHub Pages、Netlify 或任何支持静态文件的网站服务器。 &am…...

【SQL学习笔记1】增删改查+多表连接全解析(内附SQL免费在线练习工具)

可以使用Sqliteviz这个网站免费编写sql语句&#xff0c;它能够让用户直接在浏览器内练习SQL的语法&#xff0c;不需要安装任何软件。 链接如下&#xff1a; sqliteviz 注意&#xff1a; 在转写SQL语法时&#xff0c;关键字之间有一个特定的顺序&#xff0c;这个顺序会影响到…...

2021-03-15 iview一些问题

1.iview 在使用tree组件时&#xff0c;发现没有set类的方法&#xff0c;只有get&#xff0c;那么要改变tree值&#xff0c;只能遍历treeData&#xff0c;递归修改treeData的checked&#xff0c;发现无法更改&#xff0c;原因在于check模式下&#xff0c;子元素的勾选状态跟父节…...

C# 类和继承(抽象类)

抽象类 抽象类是指设计为被继承的类。抽象类只能被用作其他类的基类。 不能创建抽象类的实例。抽象类使用abstract修饰符声明。 抽象类可以包含抽象成员或普通的非抽象成员。抽象类的成员可以是抽象成员和普通带 实现的成员的任意组合。抽象类自己可以派生自另一个抽象类。例…...

dify打造数据可视化图表

一、概述 在日常工作和学习中&#xff0c;我们经常需要和数据打交道。无论是分析报告、项目展示&#xff0c;还是简单的数据洞察&#xff0c;一个清晰直观的图表&#xff0c;往往能胜过千言万语。 一款能让数据可视化变得超级简单的 MCP Server&#xff0c;由蚂蚁集团 AntV 团队…...

【LeetCode】3309. 连接二进制表示可形成的最大数值(递归|回溯|位运算)

LeetCode 3309. 连接二进制表示可形成的最大数值&#xff08;中等&#xff09; 题目描述解题思路Java代码 题目描述 题目链接&#xff1a;LeetCode 3309. 连接二进制表示可形成的最大数值&#xff08;中等&#xff09; 给你一个长度为 3 的整数数组 nums。 现以某种顺序 连接…...

Python 高效图像帧提取与视频编码:实战指南

Python 高效图像帧提取与视频编码:实战指南 在音视频处理领域,图像帧提取与视频编码是基础但极具挑战性的任务。Python 结合强大的第三方库(如 OpenCV、FFmpeg、PyAV),可以高效处理视频流,实现快速帧提取、压缩编码等关键功能。本文将深入介绍如何优化这些流程,提高处理…...

AxureRP-Pro-Beta-Setup_114413.exe (6.0.0.2887)

Name&#xff1a;3ddown Serial&#xff1a;FiCGEezgdGoYILo8U/2MFyCWj0jZoJc/sziRRj2/ENvtEq7w1RH97k5MWctqVHA 注册用户名&#xff1a;Axure 序列号&#xff1a;8t3Yk/zu4cX601/seX6wBZgYRVj/lkC2PICCdO4sFKCCLx8mcCnccoylVb40lP...