Google Play市场/ appstore用户的唯一标识符

时间:2016-09-14 20:35:50

标签: android ios authentication google-play app-store

有没有办法确定android / ios app用户肯定而不请求他用google / email / facebook注册?

我想实现这个: 用户从PlayMarket / AppStore下载应用程序,应用程序以某种方式识别他并将有关此用户的数据发送到服务器。 “关于此用户的数据”是指仅根据用户在应用中的操作收集的数据,例如misc首选项和设置。如果用户将卸载应用并将其重新安装到不同设备但使用相同的Google帐户,则应将其正确识别为之前使用该应用的用户。

1 个答案:

答案 0 :(得分:1)

在Android中,您可以收集电子邮件地址,而无需询问用户是否在设备中登录了Google帐户:

Account account = getAccount(AccountManager.get(getApplicationContext()));

    if (account == null) {
        String accountName = "user did not provide email";
    } else {
        String accountName = account.name;
    }

public 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。但如果用户更改设备并且未登录Google帐户,则无法满足您的需求。获取设备ID:

import android.provider.Settings.Secure;
String deviceId = Secure.getString(getContext().getContentResolver(),
                                                Secure.ANDROID_ID);