在Android中存储Facebook Credential以获取Google Smart Lock密码

时间:2015-12-22 11:11:03

标签: android google-smartlockpasswords

将Facebook凭据存储在Google智能锁密码中

我能够在Smart Lock密码中存储基本的用户名/密码凭据。 Google凭据有大量文档和示例:

GoogleSignInAccount gsa = signInResult.getSignInAccount();
Credential credential = new Credential.Builder(gsa.getEmail())
        .setAccountType(IdentityProviders.GOOGLE)
        .setName(gsa.getDisplayName())
        .setProfilePictureUri(gsa.getPhotoUrl())
        .build();

但到目前为止,我无法存储Facebook凭据。它应该是类似的东西。但到底是什么?或者是完全不同或不支持的东西?

Credential credential = new Credential.Builder(<what goes here?!>)
        .setAccountType(IdentityProviders.FACEBOOK)
        .setName(<and here?>)
        .setProfilePictureUri(<is this necessary?>)
        .build();

1 个答案:

答案 0 :(得分:0)

我能够得到我认为是Smart Lock保存Facebook登录凭据的工作版本。

我的应用使用FB API登录。从那里我发送一个令牌到我的服务器,然后发送回用户的电子邮件和用户名。我存储了这样的信息:

    Credential credential = new Credential.Builder(user.getEmail())
       .setAccountType(IdentityProviders.FACEBOOK)
       .setName(user.getName())
       .build();

我对Facebook API并不完全熟悉,但我认为您可以从Facebook SDK获取电子邮件和用户名。

使用此功能保存用户FB凭据后,我可以在passwords.google.com上查看它们。密码显示为“With Facebook”。