【发布时间】:2020-07-24 11:11:01
【问题描述】:
我一直在玩 google fit,但在撤销我之前授予的权限时遇到了问题。
这是我检查是否已授予权限的方式,如果未授予权限则请求权限。
private val fitnessOptions = FitnessOptions.builder()
.addDataType(DataType.TYPE_WEIGHT, FitnessOptions.ACCESS_READ)
.addDataType(DataType.AGGREGATE_WEIGHT_SUMMARY, FitnessOptions.ACCESS_READ)
.build()
val account : GoogleSignInAccount = GoogleSignIn.getAccountForExtension(activity, fitnessOptions)
if (!GoogleSignIn.hasPermissions(account, fitnessOptions)) {
GoogleSignIn.requestPermissions(
activity,
GOOGLE_FIT_PERMISSIONS_REQUEST_CODE,
account,
fitnessOptions)
}
This 页面讲了使用 ConfigClient.disableFit 断开连接,但是好像不起作用。
This 线程很好地描述了这个问题,并且 cmets 也类似于我尝试过的一些东西。该解决方案不起作用,我得到与 krokyze 相同的错误。我可以使用 GoogleSignInClient.signOut 注销用户,但如果我再次登录同一个帐户,仍然会授予权限。
通过 GoogleFit 应用断开我的应用似乎可行,但要求用户这样做并不是很好的用户体验。我也遇到了一些同步问题。我会断开应用程序,重新连接并获得权限,但我的应用程序很长一段时间都不会出现在 GoogleFit 的已连接应用程序列表中。
【问题讨论】:
-
您找到解决方案了吗?我遇到了完全相同的问题。
标签: android google-signin google-fit