HarmonyOS 鸿蒙Next中agc认证服务问题
HarmonyOS 鸿蒙Next中agc认证服务问题
第一次启动可以正常使用,但关闭后台重新启动就会报错
auth已经在onCreate里已经init了,agconnect-services.json也是从agc上下载下来也已经放在AppScope里的rawfile文件夹里,清理项目重新编译也是上面的问题
使用以下代码,报错如下:code: undefined, message: Unexpected end Text in JSON
try {
const user = await auth.getCurrentUser()
} catch (err) {
hilog.error(0x0000, 'TAG', `code: ${err.code}, message: ${err.message}`);
}
更多关于HarmonyOS 鸿蒙Next中agc认证服务问题的实战教程也可以访问 https://www.itying.com/category-93-b0.html
开发者你好,感谢您的提问,为了更快解决您的问题,麻烦请补充以下信息:
问题现象(如:异常截图、问题背景),尽可能描述的再具体点;还有我们是否是在接入一键登录报的错?
更多关于HarmonyOS 鸿蒙Next中agc认证服务问题的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
以登陆和退出登陆为例:首次打开软件auth一直都可以使用(先登陆后退出登陆),但第一次使用auth(登陆),关闭后台重新启动再使用(退出登陆)就会报错,也就是说auth使用过一次,关闭后台重新启动就会有问题,没使用过无论怎么关后台重新启动都不会报错
况且我的json文件是从agc下载的,agc下载的json文件也会这样吗,
开发者你好,我们这边对比一下前后的json,看看这个json内容是不是第一次读完了后,里面值有没有变化。
怎么看,
- 项目名称: 示例项目
- 项目状态: 进行中
- 开始日期: 2023-01-01
- 预计完成日期: 2023-12-31
- 负责人: 张三
- 团队成员: 李四, 王五, 赵六
备注: 该项目旨在实现特定目标。
找HarmonyOS工作还需要会Flutter技术的哦,有需要Flutter教程的可以学学大地老师的教程,很不错,B站免费学的哦:BV1S4411E7LY/?p=17
报错是json格式错误,用正则表达式过滤试一下
//单斜杠
str.replace(/[\u0001]/g, '');
//双斜杠
str.replace(/\\u[0-9a-fA-F]{4}/g, '');
以登陆和退出登陆为例:首次打开软件auth一直都可以使用(先登陆后退出登陆),但第一次使用auth(登陆),关闭后台重新启动再使用(退出登陆)就会报错,也就是说auth使用过一次,关闭后台重新启动就会有问题,没使用过无论怎么关后台重新启动都不会报错
况且我的json文件是从agc下载的,agc下载的json文件也会这样吗?试了你的方法还是这个问题,
鸿蒙Next中AGC认证服务问题解答:
-
AGC认证服务是华为为鸿蒙应用提供的统一身份认证服务,支持手机号、邮箱、华为账号等多种认证方式。
-
常见问题包括:
- 认证回调失败:检查应用签名证书是否在AGC平台正确配置
- 获取用户信息为空:确认已申请相应权限并通过审核
- 服务不可用:查看AGC控制台服务是否开启
- 关键配置点:
- 项目级build.gradle需添加AGC插件依赖
- 应用级build.gradle需配置签名和AGC相关元数据
- manifest文件需声明必要权限
- 调试方法:
- 使用AGC提供的调试工具验证认证流程
- 查看设备日志过滤"AGC"关键词
- 验证网络连接正常,
从描述看,这是HarmonyOS Next中AGC认证服务的一个典型初始化问题。关键点分析:
-
首次启动正常但二次启动失败,表明可能是JSON配置文件加载时序问题
-
"Unexpected end Text in JSON"错误通常表明:
- agconnect-services.json文件未正确加载
- 文件路径可能有误
- 文件内容被截断或损坏
建议检查:
- 确认json文件完整路径应为:AppScope/rawfile/agconnect-services.json
- 检查文件内容是否完整(特别是首尾括号)
- 确保文件编码为UTF-8无BOM格式
- 在onCreate中加入日志确认每次初始化都执行成功
可以尝试在getCurrentUser前先调用auth.signInAnonymously()测试服务连通性。如果问题依旧,建议检查设备网络连接和AGC控制台配置是否正确。