收藏文章 楼主

HarmonyOS Connect FAQ第二期

版块:软件应用   类型:普通   作者:小羊羔links   查看:725   回复:0   获赞:0   时间:2022-01-23 19:15:01

在开发HarmonyOS Connect生态产品时,你是否对日志获取、帐号授权、设备连接、设备控制等存在疑问?

没关系,本期我们就为大家带来产品开发功能与调测相关的常见问题答疑,让你快速get到解决方案。

赶紧往下看,一起来学习学习吧

HarmonyOS Connect FAQ第一期(点此处跳转







一、日志获取

Q1: 如何从DevEco Studio导出原子化服务项目日志

A: 原子化服务功能调试失败时,可以从DevEco Studio中导出项目日志用于问题定位。

1.确认原子化服务项目处于运行状态。

  1. 在DevEco Studio中打开原子化服务项目。
  2. 选择“Run > run”。
2.在电脑中运行cmd命令。
3.执行如下命令,清理历史日志。
hdc shell hilogcat -c

4. 执行如下命令,将日志文件导出到D盘的“log.txt”中。

hdc shell hilogcat start hilog > D:\log.txt

(左右滑动,查看更多

5.重新执行一遍原子化服务相关操作。

6.执行如下命令,结束日志导出。

ctrl c

如果无法自助解决问题,可以压缩日志文件,并发给华为技术支持人员进行定位。

Q2: 如何获取智慧生活App的日志

A: 1.打开手机的“文件管理”应用,进入“浏览”页面。

2.在“位置”列表中,选择“我的手机”。

3.进入“Android > data > com.huawei.smarthome > files > Log”文件夹。此文件夹中的文件即为智慧生活App日志。

如果无法自助解决问题,可以压缩日志文件,并发给华为技术支持人员进行定位。






二、帐号授权

Q3: 开发配网FA的华为帐号登录功能时,调用signIn接口报错

问题现象

开发配网FA的华为帐号登录功能时,调用signIn接口,返回err,{"status":"FAILED","resultCode":"-1","data":"null"}。Log日志错误信息如下

app Log:  jsBridge log: json parse failed,interface is not exists or register.

(左右滑动,查看更多

可能原因

使用signIn接口时HmsBridge未全局注册。

A: 解决措施

1.在“entry\build.gradle”文件中添加依赖包。

dependencies {   implementation 'com.huawei.hms:jsb-ohos-adapter:5.3.0.303'              }

(左右滑动,查看更多

2.在MyApplication.java中注册HmsBridge。

public void onInitialize(){   HmsBridge.getInstance().initBridge(this);   super.onInitialize();                           }
(左右滑动,查看更多

Q4:运动健康health kit权限已申请,应用依然获取不到相关数据

问题现象

已申请health kit心率数据的权限,但是FA无法获取到心率数据。

可能原因

  • 原因一 提交的读取心率数据的权限申请,未通过审批。
  • 原因二 FA工程代码的权限文件中未配置该权限URL。

A: 解决措施

1.确认提交的权限申请已通过审核。

Health Kit申请表格中的权限不应超过5个。如果超过5个,需要提供每个权限的详细用途。详见申请Health Kit服务

2.确认代码工程中entry目录的“config.js”文件,已配置相应权限URL。详见Health Kit权限列表

// 心率的kit权限是https://www.huawei.com/healthkit/heartrate.read scopeList: [ "https://www.huawei.com/healthkit/heartrate.read"            ]

(左右滑动,查看更多

申请Health Kit服务

https://developer.huawei.com/consumer/cn/doc/development/HMSCore-Guides/apply-kitservice-0000001050071707

HealthKit权限列表

https://developer.huawei.com/consumer/cn/doc/development/HMSCore-Guides/scope-list-0000001055419280





三、设备连接

Q5: 设备蓝牙已经开启,FA无法连接设备

问题现象

手机蓝牙已经开启,手机FA无法通过蓝牙模块连接设备,而且设备连接FA会闪退。

可能原因

  • 原因一 未配置ohos.permission.USE_BLUETOOTH权限。
  • 原因二 获取的BluetoothHost对象有误。

A: 解决措施

1.确认工程entry下的“config.json”中的“reqPermissions”字段包含权限“ohos.permission.USE_BLUETOOTH”。

"reqPermissions": [   {     "name": "ohos.permission.USE_BLUETOOTH"   }                   ]

(左右滑动,查看更多

2.确认BluetoothHost对象获取正确,并且蓝牙已经打开。

// 获取蓝牙本机管理对象 BluetoothHost mBluetoothHost = BluetoothHost.getDefaultHost(context); // 调用打开接口 mBluetoothHost.enableBt(); // 调用获取蓝牙开关状态接口 int state = mBluetoothHost.getBtState(); 

(左右滑动,查看更多

Q6: 设备配网过程中,设备侧日志已显示“get wifi ssid pwd done”,但热点无法连接

问题现象

设备配网的过程中,设备侧日志已显示“get wifi ssid pwd done”,但之后串口工具循环打印设备侧日志“+NOTICE:SCANFINISH/+NOTICE:DISCONNECTED”,热点无法连接,最终设备配网失败。

可能原因

  • 原因一 在智慧生活App扫描配网输入热点信息界面时,输入了错误的SSID 密码。
  • 原因二 勾选了记住密码,但热点密码已发生了改变,再次配网时传入了旧密码导致。

A: 解决措施

1.将设备重置,并重新进入待配网状态。

2.重新给设备配网,在热点信息界面输入正确的SSID和密码。

Q7: 手机碰一碰NFC标签,无法拉起本地FA,提示“查询失败,请稍后再试”

问题现象

调试原子化服务时,手机碰一碰NFC标签,无法拉起本地FA,提示“查询失败,请稍后再试”。

可能原因

  • 原因一 未创建HarmonyOS测试服务, 已创建的测试服务的配置信息有误。
  • 原因二 NFC标签写入的码流有误。

A: 解决措施

1.参考调试应用,确保已创建HarmonyOS测试服务,且服务信息、HarmonyOS标签、FA信息等均已配置正确。

2.参考生成NFC标签,确保NFC标签写入的码流正确。

调试应用

https://device.harmonyos.com/cn/docs/devicepartner/DevicePartner-Guides/atomic-service-app-debugging-0000001182777249

生成NFC标签

https://device.harmonyos.com/cn/docs/devicepartner/DevicePartner-Guides/nfc-tag-generation-0000001208456327





四、设备控制

Q8: 使用SoftAP方式完成设备配网后,拉起控制FA失败

问题现象

使用SoftAP的方式完成设备配网后,拉起控制FA失败,手机弹框提示“查询失败”。

可能原因

手机在SoftAP配网完成后会从设备的热点切回原来连接的Wi-Fi,此时有可能网络还未恢复正常,导致查询设备控制FA失败。
A: 解决措施

通过代码实现如下逻辑 配网成功后,延迟几秒(例如3s 再去启动控制页FA。

Q9: 无法触发自动安装FA的功能,导致配网FA拉起控制FA失败

问题现象

手机上没有安装控制FA,配网FA拉起控制FA失败;如果手机上已经安装控制FA,则可以正常拉起。

可能原因
配网FA使用StartAbility拉起控制FA,需要传入flag,flag未包含FLAG_INSTALL_ON_DEMAND,导致无法触发自动安装FA的功能。
A: 解决措施
将flag设置为“276826112”,该取值包含了FLAG_INSTALL_ON_DEMAND和FLAG_ABILITY_NEW_MISSION等flag。关于flag的取值和说明可以参看Ability框架的意图常量
Ability框架的意图常量
https://developer.harmonyos.com/cn/docs/documentation/doc-references/js-apis-want-constant-0000001149223824#section111975902313






五、其他问题

Q10: FA如何跳转至Vmall

A: 1.确认产品已上架Vmall商城。

2.获取到产品在Vmall的链接。

3.参考如下代码,实现链接跳转。

String url = "vmall://com.vmall.client/product/detail?prdId=xxxxxxxxxx" Intent intent = new Intent(); Operation operation = new Intent.OperationBuilder()          .withAction(IntentConstants.ACTION_VIEW_DATA)                 .withFlags(Intent.FLAG_ABILITY_NEW_MISSION)                 .withUri(Uri.parse(url)).build(); intent.setOperation(operation); context.startAbility(intent, 0);

(左右滑动,查看更多

Q11: Hi3861模组在Wi-Fi-STA模式下,如何使用AT命令连接SSID名称为“!@#¥%&*\”的热点

A: 执行如下命令连接热点,“\”需要再加一个“\”进行转义。
AT+CONN="!@#¥%&*\\"

Q12:在功能调试阶段,如何修改原子化服务所绑定的产品

A: 当原子化服务已绑定一个产品时,如果还需更改产品型号,可以参考如下步骤

1.登录华为开发者平台,单击右上角的“管理中心”

2.选择“智慧服务 > HarmonyOS服务开发平台 > 我的服务”。

3.找到服务,单击“编辑”,进入编辑页面。

4.选择“配置 > HarmonyOS标签”,修改对应标签下的产品型号。

华为开发者平台

https://developer.huawei.com/consumer/cn/

更多HarmonyOS Connect FAQ,可点击文末“ ”跳转

END


想了解更多HarmonyOS技术?
后台留言,立刻安排!



点这里,一键跳转文档

小羊羔锚文本外链网站长https://seo-links.cn 
回复列表
默认   热门   正序   倒序

回复:HarmonyOS Connect FAQ第二期

Powered by 小羊羔外链网 8.3.7

©2015 - 2024 小羊羔外链网

免费发软文外链 鄂ICP备16014738号-6

您的IP:3.238.62.119,2024-03-28 17:40:10,Processed in 0.04811 second(s).

支持原创软件,抵制盗版,共创美好明天!
头像

用户名:

粉丝数:

签名:

资料 关注 好友 消息