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

HbuilderX的使用

‌HBuilder和HBuilderX是不一样的

具体官方是这么解释的:HBuilder和HBuilderX是两款不同的跨平台移动开发工具,首先,‌HBuilder和HBuilderX的开发语言支持不同‌。HBuilder是一款纯粹的HTML5开发工具,主要用于快速开发H5网页和移动端应用。而HBuilderX则是一款集成了多种开发语言的开发工具,支持HTML5、JavaScript、CSS、Vue、React等多种开发语言,可以用于开发更加复杂的移动端应用和混合应用‌

我用这款工具是开发uni-app移动端项目,下面来说一下用的功能

运行
1、wx小程序:运行-运行到小程序模拟器-微信开发者工具,如果能直接在开发者工具上运行成功就可以了,如果没有,就把运行后生成的包文件(map-weixin)手动在开发者工具引入,如果失败了,重新启动重新导入重复操作下
在这里插入图片描述

2、app:
a、要下载一个mumu(模拟器)应用程序,他会有两个子程序,一个是模拟器运行项目,一个是多开器-里面会有端口信息(点击右上角ADB,配置的时候要用),下面是它的模拟器列表,右边点击启动,模拟器就打开了(也可以手动打开模拟器);
在这里插入图片描述

b、Hbuilder-运行-运行到手机模拟器(也可以运行到浏览器,先在浏览器上调试,模拟器无法查看元素、控制台这些),初次运行这里应该要先进行运行配置,设置adb路径,就是mumu的adb.exe完整路径(shell下面);设置端口号,前面有提到;别的应该就不要了,然后就可以 运行到App Android基座-弹窗运行,如果没有检测到再刷新一下,列表里面就会有了。下面两种单选运行模式如果有弹窗提示(未找到基座)可以来回切换解决。
在这里插入图片描述

打包apk
发行-原生app云打包,需要下载一个云打包插件

在这里插入图片描述

需要注册账号,注册完成需要完成两个认证
在这里插入图片描述

Android包名找创建者要,安卓证书使用:选择使用公共测试证书,打包的时候遇下面提示
在这里插入图片描述

这里应该找创建者邀请你为成员(需要你在自己的DCloud(前面已经注册过)点击加入),
我开始点的重新获取(会提示带来很多问题),
在这里插入图片描述

这样不行,因为后面还会用到绑定插件,你用自己生成的appid将没有绑定这个插件(需要购买和申请试用,咱没必要自己搞,也无法保证项目的统一管理)。
在这里插入图片描述

但已经重新获取了,hbuilder基础配置上是无法改回去这个id的,但这个基础配置是根据我们项目中的manifest.json来的,我们去这个文件上改回来就好了,这样就差不多了,可以打包成功了,打包文件位置控制台会有提示,就在项目unpackage(不管是哪个端运行、打包的文件都是在这个文件夹下面)某个目录下面。

打包wgt
发行-原生App-制作应用wgt包

这也是打包的一种,我是在开发版本更新(网上都是wgt包)的时候研究过,实际版本更新的时候我们选择的是apk(领导决定)。

apk是整包更新(不管改了什么,改了多少,整个包重新下载,重新安装),wgt是热更新(不需要整包替换,只需要更新修改的地方)
版本更新的实现是通过获取当前版本和接口返回的版本对比,如果一致就不需要更新,如果不一致要考虑你们使用的是强制更新还是不强制更新(比上个版本高才更新)

需要注意的是:打包的时候记得改版本号(manifest.json versionName),改成和后端接口返回的版本号一致,不然更新完还是和接口版本号对应不上就会一直重复更新,这里后端和另一个同事都提议更新完版本号用接口返回的(存起来),不用uni获取,我一直是拿uni的版本和接口对比,版本号由前端打包定义,后面另一个同事改成用后端接口的版本号,果然存在问题;
本地运行测试的时候记得版本号还要改回之前的,不然跟更新包是同一版本就不会更新了;
我记得wgt每次打包好像要改名字,名字不能一样,apk打包名字要保持一致,这个不确定。

更多关于更新版本怎么实现,可以去官网看看https://www.kancloud.cn/xiaoyulive/uniapp/1836328,自己再配合百度资料,跟热更新实现是一样的,不难

使用高德地图
需要在dcloud开发者中心申请证书,在高德地图申请key,将dcloud证书和高德地图绑定(在高德上进行),再在hbuilderX App模板配置上配置好对应的key和高德用户名,打包apk的时候选择自有证书!!(相关参数在dcloud开发者中心已经申请证书了),具体配置步骤参考https://blog.csdn.net/weixin_55684211/article/details/126786565;如果你是自己申请这些东西,打包的时候要改你自己申请的DCloud APPID,不然无法对应。因为刚开始用的公司申请的,但是公司没有申请后面的高德key这些,参数不够,所以我才自己申请,如果公司这些都做了,我们只需要在hbuilder上直接填对应的内容就可以了,如果地址获取失败就要考虑这些账号绑定、参数配置的问题了,或者在获取地址代码里打印错误信息

uni.getLocation({
     type: 'gcj02',
     geocode: true,
     success: function (result) {
       // 注意这里面this指向会发生变化
       // 查看地址返回信息
		uni.$u.toast(JSON.stringify(result))
     },
     fail: function (res) {
     	// 打印错误信息(用于调试,实际代码可以提示用户‘获取地址失败xxxxxx’)
       uni.$u.toast(JSON.stringify(res))
     }
 });

Hubilder就用来运行、发行这些好了,改代码我还是习惯vscode,HbuildX还不知道代码怎么跟git关联,查看修改内容,一下开两个编辑器好了。


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

相关文章:

  • Java中日志采集框架-JUL、Slf4j、Log4j、Logstash
  • 语义分割(semantic segmentation)
  • C++ —— string类(上)
  • macOS 的目录结构
  • Pytest 学习 @allure.severity 标记用例级别的使用
  • Linux的目录结构
  • 从零开始学习JVM(九)- 垃圾收集器
  • 【逐行注释】MATLAB的EKF和UKF例程与详细注释|附下载链接
  • LDR6500:C to DP与DP to C视频转接线双向方案
  • RTK技术算法概述!
  • 【Vue笔记】基于vue3 + element-plus + el-dialog封装一个自定义的dialog弹出窗口组件
  • 车轮上的科技:Spring Boot汽车新闻集散地
  • 线性代数[ 矩阵 矩阵的初等变换 线性方程组 ]第二三章
  • LeetCode74. 搜索二维矩阵(2024冬季每日一题 6)
  • ES5 (SM-SR-eUICC) 接口上的 OTA 通信笔记
  • 多目标优化算法:多目标鳗鱼和石斑鱼优化算法(MOEGO)求解DTLZ1-DTLZ9,提供完整MATLAB代码
  • mysql 的乐观锁和 mvcc 是一回事吗
  • Spring Security 中的 UserDetailsService(获取用户详细信息)
  • WebSocket简易聊天室实现(有详细解释)
  • 使用Python语言编写一个简单的网页爬虫,从网站上抓取指定关键词的新闻标题和链接。
  • 简单爬虫的实现
  • 小程序-基于java+SpringBoot+Vue的小区服务管理系统设计与实现
  • 力扣-Hot100-链表其三【算法学习day.36】
  • 初识arkts-类-接口
  • 关于php Datetime 时区转换因为timezone_version(时区版本)问题造成的时区转换问题
  • k8s默认使用的后端网络模式