繁体   English   中英

Android唯一ID分配

[英]Android unique id assigning

我有一个Android应用程序,用户可以在其中连接和断开服务器连接。 我不想在应用程序中进行任何注册,但是我希望服务器识别已经连接到服务器的用户。 一种方法是使用Google Play服务和实例ID API ,方法是在每次客户端连接时将gcm生成的ID发送到服务器。 使用Google Play服务API,我还可以很轻松地实现推送通知。 但是,我觉得我并不需要它们,以后我还必须实现ios和Web客户端。 Afaik没有适用于网络的Google Play服务API,因此提出了一个问题:还有其他替代方案吗?

我理解问题的方式是,您想要一个对每个设备都是唯一的uniqueId,并且您不想要我们从GCM获得的注册ID。 因此,您拥有每个设备唯一的设备ID,并且有一种获取设备ID的方法

public String uniqueId() {
        final TelephonyManager tm = (TelephonyManager) mContext
                .getSystemService(Context.TELEPHONY_SERVICE);

        final String tmDevice, tmSerial, androidId;
        tmDevice = "" + tm.getDeviceId();
        tmSerial = "" + tm.getSimSerialNumber();
        androidId = ""
                + android.provider.Settings.Secure.getString(
                        mContext.getContentResolver(),
                        android.provider.Settings.Secure.ANDROID_ID);

        UUID deviceUuid = new UUID(androidId.hashCode(),
                ((long) tmDevice.hashCode() << 32) | tmSerial.hashCode());
        String deviceId = deviceUuid.toString();

        return deviceId;
    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM