我有两个应用程序都使用相同的自定义帐户类型。这两个应用程序是完全独立的,只是共享帐户。当其中一个启动时,它会检查现有的自定义帐户,如果未找到任何帐户,则显示登录页面。
所以我创建了我AccountAuthenticator
的库项目并在两个应用程序中引用它。根据本教程:
假设您将身份验证器的代码复制到您的 2 个应用程序中,从而共享其逻辑,并更改每个应用程序的登录页面设计以适应其所属的应用程序。在这种情况下,当请求 auth-token 时,将为两个应用程序调用第一个安装的应用程序的身份验证器。如果您卸载第一个应用程序,将从现在开始调用第二个应用程序的验证器(因为它现在是唯一的)。
当我运行其中一个应用程序(无论哪个应用程序)并调用addAccount
它时,它会很好地显示登录页面。然后,当我运行第二个应用程序并调用addAccount
时,什么也没有发生,并且没有显示登录页面。卸载第一个应用程序后,第二个应用程序可以正常工作并显示登录页面。那么问题是什么,我该如何解决呢?
的实施addAccount
:
mAccountManager.addAccount(accountType, authTokenType, null, null, this, new AccountManagerCallback<Bundle>() {
@Override
public void run(AccountManagerFuture<Bundle> future) {
try {
Bundle bnd = future.getResult();
showMessage("Account was created");
} catch (Exception e) {
e.printStackTrace();
showMessage(e.getMessage());
}
}
}, null);
提前致谢