Android 安卓账户管理器
有人能帮我一步一步地在安卓系统中使用AccountManager,并提供一个简单的示例,以便更好地理解吗?我回答这个问题是为了让我自己能清楚地理解,所以我来了(我还不精通安卓系统): 应用程序通常首先要检查帐户是否存在,您可以使用:Android 安卓账户管理器,android,Android,有人能帮我一步一步地在安卓系统中使用AccountManager,并提供一个简单的示例,以便更好地理解吗?我回答这个问题是为了让我自己能清楚地理解,所以我来了(我还不精通安卓系统): 应用程序通常首先要检查帐户是否存在,您可以使用: AccountManager mgr = AccountManager.get(getApplicationContext()); Account[] accounts = mgr.getAccountsByType("com.mydomain"); // asse
AccountManager mgr = AccountManager.get(getApplicationContext());
Account[] accounts = mgr.getAccountsByType("com.mydomain");
// assert that accounts is not empty
您需要使用AccountManagerFuture
来保存身份验证令牌的结果。这必须是异步的,因为Android设备可能会要求用户同时登录:
private AccountManagerFuture<Bundle> myFuture = null;
private AccountManagerCallback<Bundle> myCallback = new AccountManagerCallback<Bundle>() {
@Override public void run(final AccountManagerFuture<Bundle> arg0) {
try {
myFuture.getResult().get(AccountManager.KEY_AUTHTOKEN); // this is your auth token
} catch (Exception e) {
// handle error
}
}
身份验证令牌类型取决于您的身份验证机制。对于谷歌账户来说,这只是“啊”
现在,每当您执行经过身份验证的请求时,只需传递令牌(在标头中,作为参数等),以便服务器端知道您是谁。您到底想做什么?您是否检查了Android SDK中的示例?下面是一个更全面的指南:
myFuture = mgr.getAuthToken(accounts[0], AUTH_TOKEN_TYPE, true, myCallback, null);