我不知道这是否是正确的问题。我们如何获取登录到 Android 中的 Google Play 商店的用户的登录 ID。这可能与否。
user2568702
问问题
10288 次
2 回答
7
据我所知,用户必须在他的 android 手机中配置他的 gmail 帐户,然后他才能访问 Google Play。
您可以获取下面给出的帐户信息(来自Jim Blackler):
import android.accounts.Account; import android.accounts.AccountManager; import android.content.Context; /** * This class uses the AccountManager to get the primary email address of the * current user. */ public class UserEmailFetcher { 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; } }
在清单中
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
于 2013-09-04T12:37:57.257 回答
7
如果您使用不需要通过AndroidManifest.xml
您请求许可的方法,则可以使用 Google Play 服务的AccountPicker。
生成一个对话框,允许用户选择他们想要的 Google 帐户:
Intent intent = AccountPicker.newChooseAccountIntent(null, null, new String[]{"com.google"}, false, null, null, null, null);
startActivityForResult(intent, SOME_REQUEST_CODE);
然后处理你的结果Activity
:
protected void onActivityResult(final int requestCode, final int resultCode, final Intent data) {
if (requestCode == SOME_REQUEST_CODE && resultCode == RESULT_OK) {
String emailAddress = data.getStringExtra(AccountManager.KEY_ACCOUNT_NAME);
// do something...
}
}
请记住添加compile 'com.google.android.gms:play-services-identity:8.+'
到build.gradle
文件中的依赖项(在此处查看要使用的最新版本号)。
于 2015-10-12T04:10:21.883 回答