HarmonyOS 鸿蒙Next 唤起面容/指纹识别后,每次获取的token不一样
HarmonyOS 鸿蒙Next 唤起面容/指纹识别后,每次获取的token不一样
开发面容/指纹登录,使用了三方库"@pura/harmony-utils" 中的AuthUtil onStart方法处理面容和指纹。业务需要扫脸后获得唯一的标识码存储到服务端,后续用户面容登录时候做比对。但目前接口返回的result中token每次都会变。
想问下如何可以获取唯一不变的标识
AuthUtil的使用示例可以参考:https://gitee.com/tongyuyan/harmony-utils/blob/master/entry/src/main/ets/pages/utils/AuthUtilPage.ets
示例中challenge的获取方式是通过AuthUtil.getChallenge()随机生成的。经测试,当调用onStart方法时就把challenge写为固定值,其返回的token中从字段"4"一直到字段"33"的值是和传入的challenge相同的。
该三方库的AuthUtil.onStart( )接口暂时获取不到固定的token值,您结合以上12500000字段和固定challenge值组合进行判断看是否满足。
在HarmonyOS鸿蒙Next系统中,唤起面容或指纹识别后,每次获取的token不一样的问题确实存在,这通常是为了增强安全性而设计的。每次认证都生成新的token,可以防止token被截获和滥用。
然而,这也带来了一个挑战,即如何确保每次获取的token能够正确地标识同一个用户。对此,可以在用户开通生物认证时获取一个初始的认证状态(state),在后续的认证过程中,对比当前的认证状态与初始状态是否一致。如果状态发生变化,可以要求用户重新进行密码认证,以确保用户凭据的一致性。
此外,还需要注意以下几点:
- 确保应用已正确接入HarmonyOS的推送服务,并配置了正确的应用签名和应用ID。
- 检查代码中是否有误传递token的情况,确保每次使用的token都是最新获取的。
- 如果问题持续存在,建议检查应用的日志输出,查找可能的错误信息或异常。
如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html