这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助

一、开发环境

uni-app 官方文档地址 原生开发者支持

1、Android Studio 下载地址:Android Studio官网 OR Android Studio中文社区

2、最新版的HBuilderX

3、App离线SDK下载:最新android平台SDK下载

4、3.1.10版本起需要申请Appkey,申请请参考

二、准备环境

1)Android Studio下载

点击进入 Android Studio官网 或者 Android Studio中文社区

点击Download Android Studio,然后下滑弹窗勾选同意协议,并点击下载Android Studio

下载成功后安装即可。

2)最新版HBuilderX下载

HBuilderX:官方IDE下载地址

HBuilderX 3.4.6版本起,取消单独的App开发版安装包,统一为一个标准安装包。标准版也可以安装app相关插件。

这里直接下载最新的正式版。

如果是已有老版的HBuilderX,可打开编辑器后,通过点击帮助,点击检查更新后,直接点击立即更新,然后等待自动更新后重启HBuilderX即可

3)App离线SDK下载

点击进入:最新android平台SDK下载

复制提取码后进入百度云直接下载最新版压缩包

下载成功后解压压缩包后打开,可根据个人习性,将HBuilder-Integrate-AS文件夹拷贝至其他专门存放打包文件的文件夹内

4)生成本地打包APP资源

打开最新版HBuilderX,点击界面上方的发行,点击原生App-本地打包,点击生成本地打包资源

生成资源成功之后,点击生成链接进入存放目录,保存生成的文件

5)申请Appkey

首先登录开发者中心,没有账号的必须注册一个。

登录成功后点击想要离线打包的项目,进入到项目的详情页

点击菜单栏的离线打包Key管理,勾选打包的平台,自定义Android包名,输入Android 证书签名SHA1,最后点击保存即可生成AppKey。

可通过在生成的Android 证书目录里面cmd命令行输入

keytool -list -v -keystore 证件名.keystore

回车后输入证书文件密码,来查看证书信息(SHA1,SHA256证书指纹)

三、开始离线打包

上述准备工作全部完成后,首先打开Android Studio编辑器导入之前准备工作里步骤三生成的离线SDK资源里的 HBuilder-Integrate-AS 文件夹

导入成功后,首先替换掉simpleDemo\src\main\assets\apps目录下的原有资源,更换为之前准备工作里步骤四HbuiderX 生成的本地打包APP资源

然后将data目录下的dcloud_control.xml文件内的appid清空,更换成自己uni-app的应用标识AppID,也就是准备工作里步骤四HbuiderX 生成的本地打包APP资源的名称

打开Androidmanifest.xml文件,将android:value替换为之前准备工作步骤五里申请的Appkey,将package更换为Android包名

打开values目录下的strings.xml文件,输入自己应用想要的应用名称(类似QQ、微信这些应用名称)

打开drawable目录,该目录主要存放

icon.png : logo图片

push.png : 消息推送logo

splash.png : 启动页

选中任意图片右键,可点击Create 9-Patch file 将图片更换为.9.png类型,防止不同型号手机导致图片变形

打开build.gradle文件,填入Android包名和大版本号和小版本号

可通过在simpleDemo\src\main\assets\apps\__UNI__B0DA83E\www目录下的manifest.json文件查看版本号信息

最后就可以点击Android Studio编辑器上方的build,点击Generate  Signed Bundle / APK进行打包

依次输入Android平台签名证书(.keystore)的证书路径、证书秘钥、证书别名和打包密码

选择正式包,最后点击Finish,等待打包完成即可

最后这就是打包完成后的文件,整个离线打包也就结束了,可以直接在手机上进行安装了

四、解决问题

最新解决Android Studio打包没有Generate Signed Bundle/APK选项

在开发React native安装Android Studio时,出现了一些问题,没有Generate Signed Bundle/APK打包选项. 
在网上查很多都是点击File,选择Sync Project with Gradle Files,我这边设置无效。

最终通过一系列配置才显示出来。

请检查是否有以下条件:

1、Node.js环境

检查是否有安装nodejs

2、JDK

JDK(Java Development Kit)是 Java 开发套件的简称。我们用 React Native 开发的 Android 应用,最
终是运行在 Java 环境中的。所以,需要安装 JDK。
下载地址: https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html
安装完成后,进行校验,打开cmd命令行,输入 java -version,然后回车,验证安装是否成功(看到版本号,说明JDK 安装成功)。

3、Android Studio环境变量

先查看Android Studio SDK位置:

在系统变量中添加ANDROID_HOME:

编辑系统变量中的Path:
新增4个
%ANDROID_HOME%\platform-tools
%ANDROID_HOME%\emulator
%ANDROID_HOME%\tools
%ANDROID_HOME%\tools\bin

以上配置完成后重启软件,即可生效。

本文转载于:

https://blog.csdn.net/PIOnly/article/details/125196697

如果对您有所帮助,欢迎您点个关注,我会定时更新技术文档,大家一起讨论学习,一起进步。

记录--UNI-APP安卓本地打包详细教程(保姆级)的更多相关文章

  1. uni-app 安卓离线打包详细教程

    借鉴 uni-app官方给出的文章http://ask.dcloud.net.cn/article/508(虽说是04年的) 预备环境 AndroidStudio开发环境,要求安装Android4.0 ...

  2. Realm_King 之 .NET 打包详细教程(B)

    上篇(Realm_King 之 .NET 打包详细教程(A))给大家讲述了打包基本的操作,接下来帮助大家如何覆盖安装,希望大家仔细阅读... (一)看到你的解决方案,选中你的安装程序,点击F4会弹出改 ...

  3. Fiddler安卓抓包详细教程

    电脑端抓包一般图方便就用浏览器自带的,最近需要分析安卓一个APP的HTTP请求,尝试了wireshark(功能太强大了,然而我并不会用),tcpdump(用起来还是比较麻烦),网上搜了一下,还是使用F ...

  4. Realm_King 之 .NET 打包详细教程(A)

    最近一直在winform程序开发,听说身边的人不是很了解打包,给大家提供一点简单的打包,相信能看懂的... (一)右键解决方案: 在弹出"添加新项目"窗体中找到  其他项目类型=& ...

  5. H5网页应用打包安卓App (全网最详细教程)

    img { box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important } .red { color: rgba(255, 0, 0, 1) } ...

  6. uni-app 使用本地打包配置安卓原生插件

    在使用 uni-app 开发的时候,遇到了一个很棘手的问题.即获取设备参数的时候 uni-app 并没有相关方法,而安卓开发是可以做到的,因为接的是三方推广,所以功能必须实现,所以求助了安卓的大佬帮我 ...

  7. Java项目打包成exe的详细教程

    Java项目打包成exe的详细教程 把Java项目打包成exe共分为以下两步: 1. 利用Eclipse先把Java项目先打成jar包 2. 利用exe4j工具把jar包转成exe 这里以Java项目 ...

  8. 使用release自动打包发布正式版详细教程

    昨天写了个release插件的版本管理,今天就在自动发布过程中遇到了许多坑,只能再写一篇自动发布详细教程,纪念我那昨日逝去的青春 (╥ _ ╥`) release正常打包发布流程按照如下几个阶段: C ...

  9. HBuilderX生成本地打包App资源

    http://ask.dcloud.net.cn/question/60254 概要 在HBuilderX中开发的应用可以提交到云端打包生成apk(Android平台)和ipa(iOS平台).如果本地 ...

  10. ios签名app稳定不掉签技术详细教程详解

    iOS签名是专门针对ios的APP内测的数字签名,是苹果面向开发者提出的一箱机制. 因为现在苹果APP下载渠道只有App Store,还可以加上一个内测用的testflight,也就是说,除了这两个官 ...

随机推荐

  1. 从零开始的 dbt 入门教程 (dbt core 开发进阶篇)

    引 在上一篇文章中,我们花了专门的篇幅介绍了 dbt 更多实用的命令,那么我们继续按照之前的约定来聊 dbt 中你可能会遇到的疑惑以及有用的概念,如果你是 dbt 初学者,我相信如下知识点一定会对你有 ...

  2. comm命令

    comm命令 comm命令用于比较两个已排过序的文件,该命令会一列列地比较两个已排序文件的差异,并将其结果显示出来,如果没有指定任何参数,则会把结果分成3列显示:第1列仅是在第1个文件中出现过的列,第 ...

  3. Js中Math对象

    Js中Math对象 Math是一个内置对象,它拥有一些数学常数属性和数学函数方法,Math用于Number类型,其不支持BigInt. 描述 Math不是一个函数对象,也就是说Math不是一个构造器, ...

  4. BentoML:如何使用 JuiceFS 加速大模型加载

    BentoML 是一个开源的大语言模型(LLM) AI 应用的开发框架和部署工具,致力于为开发者提供最简单的构建大语言模型 AI 应用的能力,其开源产品已经支持全球数千家企业和组织的核心 AI 应用. ...

  5. 用ELK分析每天4亿多条腾讯云MySQL审计日志(3)--下载日志

    当初分析日志,麻烦的是腾讯云的SQL审计日志下载,有下列限制: 1,单次最多1000万条下载 2,单个实例最多生成5条日志文件,多的要先删除以前文件才能生成   腾讯云日志文件生成界面:      一 ...

  6. Java并发编程实例--16.使用ReentrantLock实现线程同步

    Java提供另一机制去同步代码块.它比synchronized关键字更强大且易用. 它是基于Lock接口和其实现类例如:ReentrantLock. 这一机制对比synchronized关键字的优势在 ...

  7. win32-ReadProcessMemory 的使用

    std::vector<std::byte> ReadBytes(PVOID address, SIZE_T length) { std::vector<std::byte> ...

  8. 文件IO操作开发笔记(二):使用Cpp的ofstream对磁盘文件存储进行性能测试以及测试工具

    前言   在做到个别项目对日志要求较高,要求并行写入的数据较多,尽管写入数据的线程放在子线程,仍然会造成界面程序的假死(实际上Qt还是在跑,只是磁盘消耗超过瓶颈,造成假死(注意:控制台还能看到打印输出 ...

  9. portainer docker可视化工具

    下载可视化工具 docker pull portainer/portainer 启动portainer --restart=always 只要挂掉了 就自动重启 docker run -d -p 80 ...

  10. java+mysql数据库实现的学生管理系统

    说明: java+mysql数据库实现的学生管理系统 功能 实现增加学生.删除学生.修改学生.学生列表.查询学生功能 截图: 开发工具/技术 java  eclipse 价格:50元,有需要联系 微信 ...