我已实现AbstractAccountAuthenticator作为使用SyncAdapter的要求,但是我的应用程序一次仅支持1个帐户。
当用户尝试通过设置添加其他帐户时-设置崩溃并显示错误,提示其停止工作。
我看到了一些应用,例如在LinkedIn,Facebook上,他们以不同的方式处理该消息,并向用户显示一条仅支持1个帐户的声明。如何实现此功能?
这是我的身份验证器
Set<Map.Entry<String, ConfigValue>>
答案 0 :(得分:0)
当用户单击“添加帐户”按钮时,Android只会调用您的ApplicationAuthenticator
的{{3}}方法。作为回报,它希望创建帐户,启动帐户设置的Intent或错误。
如果您不允许使用多个帐户,则可以在此处选择多个选项:
addAccount
的错误。尽管我还没有尝试过。作为结果返回您的现有帐户。此时,您还可以显示Toast
。
要返回现有帐户,只需让addAccount
返回带有以下键及其各自值的Bundle
:
已添加帐户的AccountManager.KEY_ACCOUNT_NAME和AccountManager.KEY_ACCOUNT_TYPE,或
返回活动Intent
,该活动Integer.parseInt( model.getValueAt(i,2).toString() );
不会创建帐户,但会向用户说明这是不受支持/不必要的操作。并不需要活动实际上添加一个帐户。
这为IMO提供了最佳的用户体验。