基于Google Developers网站,应用程序可以将电子邮件和密码存储到Smart Lock中。有没有办法在Smart Lock中存储电话号码?对于消息传递应用非常重要。
答案 0 :(得分:2)
是的,您可以在构建凭证对象时存储任何字符串作为标识符,包括电话号码和一般用户名,而不仅仅是电子邮件地址。确保以您的应用理解的格式存储任何电话号码,并且当您从API中检索时可以使用该电话号码;标识符不会以任何方式标准化。
Android上的示例(类似于网络):
String phoneNumber = "+1 (650) 253-0000";
Credential credential = new Credential.Builder(phoneNumber)
.setPassword(password)
.build();
Auth.CredentialsApi.save(apiClient, credential).setResultCallback(new ResultCallback() {
public void onResult(Result result) {
Status status = result.getStatus();
if (status.isSuccess()) {
Log.d(TAG, "SAVE: OK");
// updates to existing credentials will succeed immediately
} else if (status.hasResolution()) {
// confirmation is required to save a new phone number
status.startResolutionForResult(this, RC_SAVE);
...
请注意,如果您的基于电话号码的帐户没有密码,您可以设置"帐户类型"使用您自己的网址而不是凭据的密码(例如,在构建凭据时.setAccountType(YOUR_URL)
)。
有关更多信息,请参阅Smart saving和retrieving凭据的开发人员文档,并在评论中留下任何后续问题。