我见过像Accessing Google Account Id /username via Android这样使用AccountManager
的参考文献。但它看起来是用来抢authtoken
的
我只需要访问用户名,没有密码或任何身份验证令牌。
我使用的是android 2.1 sdk。如何在Android上获取google用户名?
发布于 2010-04-30 08:51:36
正如评论中提到的,罗曼对How to get the Android device's primary e-mail address的回答解决了这个问题。下面是我使用的代码,它还将从电子邮件中删除用户名。
public String getUsername() {
AccountManager manager = AccountManager.get(this);
Account[] accounts = manager.getAccountsByType("com.google");
List<String> possibleEmails = new LinkedList<String>();
for (Account account : accounts) {
// TODO: Check possibleEmail against an email regex or treat
// account.name as an email address only for certain account.type values.
possibleEmails.add(account.name);
}
if (!possibleEmails.isEmpty() && possibleEmails.get(0) != null) {
String email = possibleEmails.get(0);
String[] parts = email.split("@");
if (parts.length > 1)
return parts[0];
}
return null;
}
https://stackoverflow.com/questions/2727029
复制相似问题