我想以编程方式在播放存储中选择默认电子邮件地址吗?我知道如何从客户经理那里获得电子邮件地址的详细信息,但不专门从play store应用程序中获得?这可能吗?
谢谢!
用户在Play Store中使用的电子邮件帐户应该与设备的谷歌帐户相同,您可以使用以下方法获得:
Account[] accounts = accountManager.getAccountsByType("com.google");
static String getEmail(Context context) {
AccountManager accountManager = AccountManager.get(context);
Account account = getAccount(accountManager);
if (account == null) {
return null;
} else {
return account.name;
}
}
private static Account getAccount(AccountManager accountManager) {
Account[] accounts = accountManager.getAccountsByType("com.google");
Account account;
if (accounts.length > 0) {
account = accounts[0];
} else {
account = null;
}
return account;
}
来源:https://stackoverflow.com/a/2556540/950427
如果您想获得当前配置为播放商店帐户的帐户邮件id的名称。请使用它。我在这里只放了电子邮件名称,但你可以从账户对象中获得账户类型、描述等所有信息
Pattern emailPattern = Patterns.EMAIL_ADDRESS;
Account[] accounts = AccountManager.get(this).getAccountsByType("com.google");
for (Account account : accounts) {
if (emailPattern.matcher(account.name).matches()) {
primaryEmailID = account.name;
}
}