当前位置:网站首页>【HMS core】【FAQ】Account、IAP、Location Kit and HarmonyOS典型问题合集1
【HMS core】【FAQ】Account、IAP、Location Kit and HarmonyOS典型问题合集1
2022-07-30 15:15:00 【华为开发者论坛】
1. 引用定位服务SDK后,版本高于6.2.0.300时,编译报错。
问题描述:
在集成IAP时,遇到鸿蒙2.0版本客户App会出现无法启动的情况,更新最新版本,使用SDK的最新版本,切换到com.huawei.hms:location:6.2.0.30及其以上版本就会编译失败。
报错时的信息截图:

解决方案一:
不是location kit升级导致的,建议查一下AS同步项目时的一些报错,如:
Caused by: org.gradle.workers.internal.DefaultWorkerExecutor$WorkExecutionException
Caused by: com.android.builder.merge.DuplicateRelativeFileException
这两个解决方案可以参考:
https://stackoverflow.com/questions/57997668/project-fails-to-compile-after-renaming
解决方案二:
(如果一直使用这个版本:implementation 'com.huawei.hms:location:6.0.0.302',同样的环境,升级到6.2.0.300或6.3.0.302就会提示编译报错,是否需要增加剔除libstlport_shared.so,也没有使用相关的库,是否因为Location的库包含这个so)
在app/build.gradle里面加规避不必要的依赖文件
packagingOptions {
exclude 'core.properties'
}2. 登陆授权时候,会弹出dialog加载转圈,导致window的DecorView状态改变,手机做的延申背景的刘海位置出现黑边。
问题描述:
在华为手机账号授权手机登陆,dialog加载时不出现黑边,dialog出现时刘海出现黑色覆盖页面。


agc登陆时,华为账号进行授权登陆,在授权的时候弹出dialog,流海出现黑色覆盖。
初步分析:
登陆授权时候,会弹出dialog加载转圈,导致window的DecorView状态改变,手机做的延申背景的刘海位置出现黑边
解决方案:
经过和账号研发以及HMS Core 框架开发联合确认,这个是之前已经定位的已知问题,650已经提了需求的,框架这边有个界面没有做挖空屏适配,到时候应该需要和账号那边一起调一下,因为仅仅修改框架透明页的挖空屏适配也是无法解决问题的。后面的HMS Core 640版本升级了会得到解决。
3. 鸿蒙开发,在library中js如何实现国际化
问题描述:
library中,js实现国际化,在i18n下的zh-CN.json添加字符串(如下图),通过this.$t('strings.app_not_install')获取字符串,希望在library中可以正常获取到国际化字符串

初步分析:
鸿蒙开发可以在entry中国际化,
如果想修改其国际化资源文件,找到js下default下i18n下zh-CN.json。然后修改成显示的文本,重新运行。

该问题可以参考的文档如下:
鸿蒙基于JS搭建HelloWorld并修改国际化文件_霸道流氓气质的博客-CSDN博客
解决方案:
js实现国际化可参考最新的应用配置。
该问题可以参考的文档如下:
4. 接收订阅关键事件通知出错
问题描述:
接收订阅关键事件通知的时候,按照实例代码解析JSON内容,内容为空。
附代码:
header("Content-Type: application/json; charset=utf-8");
file_get_contents("php://input");
$request = json_decode($raw_post_data,false);
var_dump($request);
$response = new StatusUpdateNotificationResponse();
if(empty( $request->statusUpdateNotification)|| empty($request->notifycationSignature))
{
$response->errorCode = 1; //failure
$response->errorMsg = "the notification message is empty";
echo $response->buildResponse();
return;
}调用了IAP的接口接收订阅事件网址:https://www.zymap.xyz/hwMessage.php
实际返回的结果:{"result":1,"errorMsg":"the notification message is empty"}
初步分析:
是服务器方订阅关键事件通知,无法解析JSON的问题。
订阅事件地址配置可参考这个文档:
注意:建议所有提供订阅商品的App均配置该通知地址,以便接收订阅商品关键事件通知,为顾客提供更好、更及时的服务。另外,通知地址必须基于HTTPS并且配置有商业域名机构颁发的证书。
解决方案:
配置了订阅通知仍然接收不到。检查发现:json文件本身有问题啊,格式不正确,转义的时候出现问题,导致json数据破坏了
所以是框架侧有没有处理过,对这些数据有没有做操作。并且接收订阅通知内容要使用string来接受。
欲了解更多更全技术文章,欢迎访问https://developer.huawei.com/consumer/cn/forum/?ha_source=zzh
边栏推荐
- Core Topics under Microservice Architecture (2): Design Principles and Core Topics of Microservice Architecture
- tiup clean
- 数据库日期类型字段设计,应该如何选择?
- 解析字符串拼接的两种情况
- Use of InputStream and OutputStream
- Excel使用Visual Basic Editor对宏进行修改
- R中按照数字大小进行排序
- Debug - Notes
- Sparse-PointNet: See Further in Autonomous Vehicles 论文笔记
- 本地事务与分布式事务
猜你喜欢
随机推荐
TiUP 故障排查
tiup clean
极验深知v2分析
Debug - Notes
Is Redis really slow?
Core Topics under Microservice Architecture (2): Design Principles and Core Topics of Microservice Architecture
ECCV2022 | FPN错位对齐,实现高效半监督目标检测 (PseCo)
Classes and Objects (Part 2)
Data Analysis Tools - DDL operations & DML operations in HQL
nodejs environment variable settings
存储器映射、位带操作
L2-007 Family property (use of vector, set, map)
JHM:芳环羟化双加氧酶数据库DARHD建立及相关引物评价
yarn安装详细教程说明、升级教程、修改yarn的全局和缓存目录、yarn基本命令
TiUP 简介
xxl-job源码解析(技术分享)
Shell脚本的概念
R中按照数字大小进行排序
软件包 - 笔记
php如何去除字符串最后一位字符








