プログラムで Play ストアで選択されたデフォルトのメール アドレスを取得したいですか? アカウント マネージャーからメール アドレスの詳細を取得する方法は知っていますが、特に Play ストア アプリからは取得できませんか? これは可能ですか?
ありがとう!
プログラムで Play ストアで選択されたデフォルトのメール アドレスを取得したいですか? アカウント マネージャーからメール アドレスの詳細を取得する方法は知っていますが、特に Play ストア アプリからは取得できませんか? これは可能ですか?
ありがとう!
ユーザーがPlayストアで使用しているメールアカウントは、デバイスのGoogleアカウントと同じである必要があります。これは、次を使用して取得できます。
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;
}
現在プレイストアアカウントに設定されているメールIDのアカウント名を取得したい場合。どうぞご利用ください。ここではメール名のみを入力していますが、アカウント オブジェクトから type 、 descriptin などのアカウントのすべての情報を取得できます
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;
}
}