由于某种原因,Fitness.requestPermissions(permissions).then((authorized) => { console.log(authorized) }总是返回false。同样在文档中,它说它的permissions应该是:
const permissions = [
{ kind: Fitness.PermissionKind.Step, access: Fitness.PermissionAccess.Read },
];但是console.log(Fitness.PermissionKind, Fitness.PermissionAccess)的输出是:
{"Activity": 2, "Calories": 3, "Distance": 1, "HeartRate": 4, "Step": 0} {"READ": 0, "WRITE": 1}Fitness.PermissionAccess.Read具有大写密钥{"READ": 0, "WRITE": 1}
你知道为什么Fitness.requestPermissions([{kind:0, access: 0}]) (Fitness.PermissionKind.Step和Fitness.PermissionAccess.READ)总是失败吗?它确实显示了一个弹出窗口,在那里我可以选择一个帐户,但仍然没有授予权限。
发布于 2021-03-12 19:25:57
您一定是用错误的debug.keystore创建了客户端ID,而不是React Native android项目提供的那个。您可以在react-native工程的android/app文件夹中使用以下命令获取正确的SHA-1密钥:
keytool -keystore path-to-debug-or-production-keystore -list -v如果这要求提供密码,您可以从build.gradle文件中获取密码。
https://stackoverflow.com/questions/64878978
复制相似问题