1

我目前在 nexus 播放器中为我们的电视应用程序设置智能锁。

问题是,即使我已经通过我们的移动应用程序(很久以前实现了智能锁 sdk)为我的谷歌帐户保存了一些凭据集,但我无法在我们的电视应用程序中检索所有这些凭据集。 在此处输入图像描述

在我们的电视应用程序中,我只能检索其中一个凭据。

更奇怪的是,如果我尝试通过我的电视应用程序保存我的一个凭据,该应用程序已经存在于云中(帐户以 6249 开头),它将被保存并且您可以看到重复的凭据。之后,我可以从电视应用程序的智能锁中检索此凭据。

在此处输入图像描述 在此处输入图像描述

请注意,电视应用程序和我们的移动应用程序的应用程序域是相同的。

4

1 回答 1

-1

CredentialsApi.request()您可以通过方法检索保存的凭据。

Auth.CredentialsApi.request(mCredentialsClient, mCredentialRequest).setResultCallback(
new ResultCallback<CredentialRequestResult>() {
@Override
public void onResult(CredentialRequestResult credentialRequestResult) {
if (credentialRequestResult.getStatus().isSuccess()) {
// See "Handle successful credential requests"
onCredentialRetrieved(credentialRequestResult.getCredential());
} else {
// See "Handle unsuccessful and incomplete credential requests"
resolveResult(credentialRequestResult.getStatus());
}
}
});

处理多个保存的凭据:

当需要用户输入来选择凭证时,该getStatusCode()方法返回RESOLUTION_REQUIRED. 在这种情况下,调用状态对象的startResolutionForResult()方法来提示用户选择一个帐户。Credential.EXTRA_KEY然后,通过传递给该方法,从活动的 onActivityResult() 方法中检索用户选择的凭据getParcelableExtra()

这是如何存储凭据的文档:https ://developers.google.com/identity/smartlock-passwords/android/store-credentials#store_credentials

于 2016-06-29T12:06:29.660 回答