我在我的应用中实现了密码智能锁.我应该测试哪些常见场景和用户体验流程?
将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();
Run Code Online (Sandbox Code Playgroud)
但到目前为止,我无法存储Facebook凭据.它应该是类似的东西.但到底是什么?或者是完全不同或不支持的东西?
Credential credential = new Credential.Builder(<what goes here?!>)
.setAccountType(IdentityProviders.FACEBOOK)
.setName(<and here?>)
.setProfilePictureUri(<is this necessary?>)
.build();
Run Code Online (Sandbox Code Playgroud) Smart Lock弹出对话框只有两个按钮,一个是"never",另一个是"save password".如果用户意外点击"从不",SmartLock将被禁用,直到他使用Chrome应用程序删除"从未保存过的密码"项,这对于"懒惰用户"来说是太多步骤,而且这很可能是用户可能不会永远使用SmartLock
在我们看来,如果用户不想将他的密码只保存到SmartLock一次,很可能他会点击"从不",因为Dialog只有两个按钮......很少有人知道他们是否点击了其他地方屏幕他们可以解雇Dialog ....一旦他们点击从不,他们就失去了享受SmartLock的机会;(所以我们建议谷歌可以为Dialog提供3个按钮,"never","no","保存密码",这将使用户更容易理解他们正在做什么.

当我运行快速启动示例时:https://github.com/googlesamples/android-credentials/
在运行Marshmallow的Nexus 6上,凭据已成功保存.
但是,在带有棒棒糖(5.1.1)的三星Note 5上,我得到:
11-25 14:45:27.581 11428-11428/com.google.example.credentialsbasic D/MainActivity: Save Failed:Status{statusCode=No eligible accounts on this device for the credentials API., resolution=null}
Run Code Online (Sandbox Code Playgroud)
据Google Smart Lock for Password默认启用,我在三星设置中找不到它的设置.这是否意味着三星手机不支持Smart Lock for Passwords?这是一个真正只适用于Nexuses的功能吗?
我在设备支持或我提供的错误消息方面找不到任何相关文档.