簡體   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