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

uni-app 程序打包 Android apk、安卓夜神模拟器调试运行

1、打包思路

云端打包方案(每天免费次数限制5,最简单,可以先打包尝试一下你的程序打包后是否能用):

HBuilderX 
发行App-Android云打包  
选择Android、使用云端证书、快速安心打包

本地打包:

HBuilderX 
发行App-Android本地打包 
生成本地打包App资源 
在云平台生成离线打包key
下载云端证书(https://dev.dcloud.net.cn/pages/app/list) 即可生成打包资源
再把android stdio打开下载好的离线sdk
打包资源替换到android stdio中打包
修改appkey和证书等配置打包即可

打包后的程序可能出现的问题: 提示appkey错误(检查配置)、图片资源加载不到(推荐使用相对路径)、页面白屏问题

页面白屏问题排查: 我这里安装了夜神模拟器运行,然后在调试控制台看报错,发现问题是因为我使用的vue+uniapp引入的高德地图map的包,而@amap/amap-jsapi-loader报错不支持安卓运行,解决方案是先将程序打包成H5页面,再创建一个H5程序把H5打包成安卓解决了(因为是临时演示程序,能跑就行了)

1.1、云端打包思路

配置在manifest.json中修改,勾选多种cpu支持(一些模拟器是x86)
在这里插入图片描述
在这里插入图片描述
包名和云平台证书保持一致
在这里插入图片描述

1.2、本地打包思路

参考:https://blog.csdn.net/weixin_44297859/article/details/144868624

注意:HBuilderX 和下载的Android离线SDK版本一致

2、uni-app打包到H5(可跳过看步骤3直接打包到安卓)

先打包到h5再打包到安卓,为了解决我的演示项目资源找不到问题
增加相对路径,可以直接打开index
在这里插入图片描述
然后直接打包即可:
在这里插入图片描述

3、H5或uni-app 本地打包到 Android apk包

如果之前没配置过,需要配置uni-app去云端生成配置即可(可以先打包试一下,好像会自动生成,只有离线key是手动创建的)
https://dev.dcloud.net.cn/pages/app/list

云端生成:
下载证书、查看密码、创建离线key
在这里插入图片描述
在这里插入图片描述

生成打包App资源
在这里插入图片描述
得到这样的一个文件夹:
在这里插入图片描述
以上,需要离线打包的app资源、证书、密码、离线key都已经准备完毕

下载Android 离线SDK,版本和HBuilderX保持一致即可
https://nativesupport.dcloud.net.cn/AppDocs/usesdk/android.html

下载安装Android stdio

解压刚刚下载的sdk,用Android stdio打开里面的这个文件夹项目:
在这里插入图片描述
如果你没有安装gradle(依赖管理工具,类似maven),需要先去下载安装配置一下
在这里插入图片描述
下面开始配置,主要操作这些文件:
在这里插入图片描述
1、把刚刚uni-app生成的app资源替换到apps中,我这里H518DCF6F和上面图的__UNI__719D572名不一样,是因为另一个项目的包,下面的应用标识都是H518DCF6F作为示例:
在这里插入图片描述
2、配置离线key:
在这里插入图片描述
3、配置appid
在这里插入图片描述
4、app名根据需要修改:
在这里插入图片描述
5、这两处版本修改保持一致(不确定有没有必要)
在这里插入图片描述
在这里插入图片描述
6、配置证书,证书文件我这里放到了simpleDemo下
在这里插入图片描述
7、大功告成,开始打包:
在这里插入图片描述
在这里插入图片描述
8、配置证书文件、别名、密码

在这里插入图片描述
9、等待打包完成即可,测试apk是否好用吧
在这里插入图片描述

4、uni-app 运行到夜神模拟器

启动夜神模拟器,配置安卓路径和端口信息
在这里插入图片描述
在这里插入图片描述

在模拟器设置中关于本机 ->狂点版本号 进入开发者模式
在这里插入图片描述
运行到模拟器即可:
在这里插入图片描述


http://www.kler.cn/a/517702.html

相关文章:

  • 有限元分析学习——Anasys Workbanch第一阶段_终篇_齿轮整体强度案例分析
  • 设计新的 Kibana 仪表板布局以支持可折叠部分等
  • Spring--SpringMVC使用(接收和响应数据、RESTFul风格设计、其他扩展)
  • 软件质量与测试报告5-压力测试 JMeter 与 Badboy
  • 基于 Jenkins 的测试报告获取与处理并写入 Jira Wiki 的技术总结
  • 代码随想录 二叉树 test 2
  • VScode使用笔记
  • YOLO11改进-模块-引入Restormer模块
  • OpenCV:在图像中添加高斯噪声、胡椒噪声
  • freeswtch目录下modules.conf各个模块的介绍【freeswitch版本1.6.8】
  • 使用 C++ 在深度学习中的应用:如何通过 C++20 构建高效神经网络
  • vue3 中如何监听 props 中的值的变化
  • 自定义脚手架
  • Rust使用tokio(一)
  • 蓝桥杯3520 翻转 | 贪心+分类讨论
  • 《Effective Java》学习笔记——第7部分并发
  • 一文讲清JVM中的内存泄漏问题
  • Go语言中的值类型和引用类型特点
  • STM32项目分享:智能宠物喂食系统(升级版)
  • 软件过程模型
  • python动态全局缓存配置
  • 【论文+源码】 SeqDiffuSeq带有序列到序列生成的编码器变压器的文本扩散模型
  • OpenCV相机标定与3D重建(65)对图像点进行去畸变处理函数undistortPoints()的使用
  • 洛谷P1469 找筷子
  • Scala语言的移动应用开发
  • 使用select函数创建多线程TCP服务端