Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/202.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
Android 如何将OAuth2中的凭据存储在共享首选项中_Android_Sharedpreferences_Google Oauth - Fatal编程技术网

Android 如何将OAuth2中的凭据存储在共享首选项中

Android 如何将OAuth2中的凭据存储在共享首选项中,android,sharedpreferences,google-oauth,Android,Sharedpreferences,Google Oauth,我有几个活动可以连接到谷歌,我只想连接到谷歌一次,并在整个应用程序中共享凭据。我有一个活动可以通过OAuth2向Google进行身份验证。它返回一个凭证,如下所示: private GoogleAccountCredential credential; ... credential = GoogleAccountCredential.usingOAuth2(this, DriveScopes.DRIVE); 是否有一种方法可以将其放入共享首选项中。我尝试了所有明显的类型,如parcelab

我有几个活动可以连接到谷歌,我只想连接到谷歌一次,并在整个应用程序中共享凭据。我有一个活动可以通过OAuth2向Google进行身份验证。它返回一个凭证,如下所示:

private GoogleAccountCredential credential;

...

credential = GoogleAccountCredential.usingOAuth2(this, DriveScopes.DRIVE);
是否有一种方法可以将其放入共享首选项中。我尝试了所有明显的类型,如parcelable等,我发现凭证可以放入共享首选项,但找不到getter将其转换回GoogleAccountCredential。我甚至尝试过将它变成一个对象,但getter再次将其转换回GoogleAccountCredential类型时出现问题

如果股票优先权无法实现,是否还有其他选择


提前感谢您的时间和帮助。

您可能希望在Android中使用AccountManager API。AccountManager能够存储OAuth令牌,并在Android中为所有Google应用程序执行此项工作。您可以关注博客。

您可能希望在Android中使用AccountManager API。AccountManager能够存储OAuth令牌,并在Android中为所有Google应用程序执行此项工作。你可以关注这个博客。

看起来像是一个很棒的博客,非常彻底,写得很好。我详细检查了一下。非常感谢。@PeterBirdsall非常感谢,所以通常意味着接受答案和投票:)看起来像是一个伟大的博客,非常彻底,写得很好。我详细检查了一下。非常感谢。@PeterBirdsall非常感谢,所以通常意味着接受答案和投票:)