Google 跨多个应用的 Smart Lock
Google Smart Lock across multiple apps
我一直在尝试让 Google 的 Smart Lock 在我拥有的两个应用程序之间工作(不幸的是使用不同的密钥库),但没有成功。
在 Smart Lock 中为一个应用程序 (APP 1) 保存密码很简单,方法如下:
Credential credential = new Credential.Builder(email)
.setPassword(password)
.build();
Auth.CredentialsApi.save(mCredentialsApiClient, credential).setResultCallback(...
但是,当我尝试在 APP 2 中创建 CredentialRequest
时,它无法读取从 APP 1[= 中保存的相同凭据31=]。
我尝试将 accountType
设置为它们之间的相同标识符,例如:
Credential credential = new Credential.Builder(email)
.setPassword(password)
.setAccountType(ACCOUNT_TYPE)
.build();
Auth.CredentialsApi.save(mCredentialsApiClient, credential).setResultCallback(...
...
CredentialRequest request = new CredentialRequest.Builder()
.setAccountTypes(ACCOUNT_TYPE)
.build();
Auth.CredentialsApi.request(mCredentialsApiClient, request).setResultCallback(...
但我收到一个异常,说明您不能在同一个凭据上同时设置 password
和 accountType
(与文档中的内容相符)。
有人在两个应用程序之间尝试过类似的东西吗?
我应该注意,目前我无法将应用程序的凭据与我的网站登录联系起来,因此无法使用 Digital Asset Links
机制。
出于安全原因,digit asset linking 是将多个应用程序与不同的程序包名称和签名证书相关联以使用 Smart Lock 检索密码的唯一方法。
如果您还不能支持来自网站的凭据,那么只需从数字资产 link 文件中排除 "web" 目标,凭据将仅在应用程序之间共享(但您仍然必须将文件托管在某个地方,并在两个应用程序清单中向该文件包含 link。
我一直在尝试让 Google 的 Smart Lock 在我拥有的两个应用程序之间工作(不幸的是使用不同的密钥库),但没有成功。
在 Smart Lock 中为一个应用程序 (APP 1) 保存密码很简单,方法如下:
Credential credential = new Credential.Builder(email)
.setPassword(password)
.build();
Auth.CredentialsApi.save(mCredentialsApiClient, credential).setResultCallback(...
但是,当我尝试在 APP 2 中创建 CredentialRequest
时,它无法读取从 APP 1[= 中保存的相同凭据31=]。
我尝试将 accountType
设置为它们之间的相同标识符,例如:
Credential credential = new Credential.Builder(email)
.setPassword(password)
.setAccountType(ACCOUNT_TYPE)
.build();
Auth.CredentialsApi.save(mCredentialsApiClient, credential).setResultCallback(...
...
CredentialRequest request = new CredentialRequest.Builder()
.setAccountTypes(ACCOUNT_TYPE)
.build();
Auth.CredentialsApi.request(mCredentialsApiClient, request).setResultCallback(...
但我收到一个异常,说明您不能在同一个凭据上同时设置 password
和 accountType
(与文档中的内容相符)。
有人在两个应用程序之间尝试过类似的东西吗?
我应该注意,目前我无法将应用程序的凭据与我的网站登录联系起来,因此无法使用 Digital Asset Links
机制。
出于安全原因,digit asset linking 是将多个应用程序与不同的程序包名称和签名证书相关联以使用 Smart Lock 检索密码的唯一方法。
如果您还不能支持来自网站的凭据,那么只需从数字资产 link 文件中排除 "web" 目标,凭据将仅在应用程序之间共享(但您仍然必须将文件托管在某个地方,并在两个应用程序清单中向该文件包含 link。