当前位置:网站首页>【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
边栏推荐
- 难道Redis真的变慢了吗?
- QIIME2得到PICRUSt2结果后如何分析
- 【云原生】灰度发布、蓝绿发布、滚动发布、灰度发布解释
- L2-007 家庭房产(vector、set、map的使用)
- tiup completion
- Redis cache penetration, breakdown, avalanche and consistency issues
- [Cloud native] Grayscale release, blue-green release, rolling release, grayscale release explanation
- php字符串如何去除第一个字符
- 软件包 - 笔记
- Applicable scenarios of TiDB tools
猜你喜欢
随机推荐
【重磅来袭】教你如何在RGBD三维重建中获取高质量模型纹理
JHM:芳环羟化双加氧酶数据库DARHD建立及相关引物评价
In-depth analysis of Kubernetes application management
Example of video switching playback (video switching example) code
延时消息队列
[Cloud native] Alibaba Cloud ARMS business real-time monitoring
在树莓派上驱动CSI摄像头
Overview of TiUP commands
【云原生】服务行业案例-不可预测的并发场景解决方案
TiUP 术语及核心概念
TiUP terms and core concepts
vite 多页面应用刷新页面时,不会在当前路由中,会返回到根路由
视频切换播放的例子(视频切换范例)代码
工具| execsnoop 短时进程追踪工具
数据库日期类型字段设计,应该如何选择?
tiup clean
Alluxio为Presto赋能跨云的自助服务能力
Debug - Notes
Load Base Split 使用文档
tiup list









