Google drive api 未提示用户允许应用程序访问Google Drive

Google drive api 未提示用户允许应用程序访问Google Drive,google-drive-api,Google Drive Api,要获得代币,我打电话: getToken(上下文,帐户,“oauth2:+”) 这将始终给我一个令牌,因此我的代码可以工作,但我希望(至少是第一次)获得UserRecoverableAuthException,以便我可以在异常上使用该意图来提示用户采取行动。本例中的操作是授予我的应用程序访问该用户的Google drive存储的权限 从网站上,我断开应用程序与驱动器的连接,运行我的应用程序,将文件写入我的gdrive,然后从网站上看到应用程序已连接到我的驱动器 为什么没有提示用户允许访问 如果用

要获得代币,我打电话: getToken(上下文,帐户,“oauth2:+”)

这将始终给我一个令牌,因此我的代码可以工作,但我希望(至少是第一次)获得UserRecoverableAuthException,以便我可以在异常上使用该意图来提示用户采取行动。本例中的操作是授予我的应用程序访问该用户的Google drive存储的权限

从网站上,我断开应用程序与驱动器的连接,运行我的应用程序,将文件写入我的gdrive,然后从网站上看到应用程序已连接到我的驱动器


为什么没有提示用户允许访问

如果用户已为您的应用程序授予该作用域的权限,则不会引发UserRecoverableAuthException。

我发现在我的案例中,授权对话框没有显示,因为我在AndroidManifest.xml中将singleInstance添加到活动中

从AndroidManifest中删除

android:launchMode = "singleInstance"

修复了此问题以及活动之间的一些其他奇怪的过渡效果。

第一次将应用程序连接到驱动器时,当您发送帐户名时,它会自动请求权限

只有当用户断开应用程序的连接时,才会引发您期望的异常


尝试断开应用程序的连接,然后读取/写入驱动器。它应该抛出此异常。

当然可以,但是如果你上网并为你的应用选择“断开与驱动器的连接”,这些权限不会被取消吗?是的。问题是如何再次申请许可。