Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/121.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios GPPSignIn错误无效\u授权/令牌已被吊销_Ios_Iphone_Google Plus_Google Plus Signin - Fatal编程技术网

Ios GPPSignIn错误无效\u授权/令牌已被吊销

Ios GPPSignIn错误无效\u授权/令牌已被吊销,ios,iphone,google-plus,google-plus-signin,Ios,Iphone,Google Plus,Google Plus Signin,就这个问题: 因此,如果我使用该应用程序一段时间,我将正确接收刷新令牌。问题是,如果我将应用程序放在后台几个小时(我注意到超过3-4小时),下次当我trySilentAuthentication时,它会返回以下错误: Error Domain=com.google.HTTPStatus Code=400 "The operation couldn’t be completed. (com.google.HTTPStatus error 400.)" UserInfo=0x7feefbfa4

就这个问题:

因此,如果我使用该应用程序一段时间,我将正确接收刷新令牌。问题是,如果我将应用程序放在后台几个小时(我注意到超过3-4小时),下次当我
trySilentAuthentication
时,它会返回以下错误:

Error Domain=com.google.HTTPStatus Code=400 
"The operation couldn’t be completed. (com.google.HTTPStatus error 400.)" 
UserInfo=0x7feefbfa4cd0 {  
                         json={ error = "invalid_grant"; 
                         "error_description" = "Token has been revoked."; }
我必须指定没有人手动撤销令牌或任何其他手动操作

更奇怪的是,有时在收到此错误后,如果我终止应用程序,然后再次打开它并运行
trySilentAuthentication
,它就工作了,并且正确生成了一个新令牌,尽管有时无法工作

我还需要做什么,比如再次显示同意屏幕?这对于用户来说是非常不愉快的,因为他们每天都看到那个屏幕


非常感谢您的帮助。

我想您需要先发布一些代码,然后才能有人帮您调试。你多长时间使用一次刷新令牌?这正是你在我问题顶部的链接中看到的代码,但这里还是链接:至于“多久使用一次”:通常,每次用户打开应用程序时,我都会调用trySilentAuthentication。无论我打开应用程序多少次,都可以正常工作。但是如果超过几个小时,下次它就不会刷新令牌,而是抛出上面的错误。我在文档中没有看到任何东西可以帮助我解决这个问题。这些令牌有这么多问题,文档也没有任何帮助。只要访问令牌有效,您就不应该使用刷新令牌获得新的令牌,访问令牌的有效期约为一小时。我想知道您是否请求从服务器访问令牌导致服务器关闭。我以前从未见过这种错误。Token revoke通常意味着用户在进入Google设置并删除你的访问权限时,你说不是这样的。手动撤销Token绝对不是这样的。这是一个iOS应用程序。你知道我应该多久打一次电话给trySilentAuthentication吗?我怀疑这是因为太频繁地索取代币。因为我可以问很多次,没问题,但是在停顿了几个小时后,我收到了上面的错误。现在,我从3天前就没有给trySilentAuthentication打过电话,今天第一次打电话时收到错误。