android 如何获得亚马逊Kindle Fire的唯一设备ID

zu0ti5jz  于 2023-02-17  发布在  Android
关注(0)|答案(2)|浏览(184)

要获取Android手机/平板电脑上的唯一设备ID,我们使用以下方法:

((TelephonyManager) ctx.getSystemService(Context.TELEPHONY_SERVICE)).getDeviceId()

但对于Kindle Fire,我们却买不到。

xzlaal3s

xzlaal3s1#

您应该尝试使用以下行:

deviceId = Secure.getString(context.getContentResolver(), Secure.ANDROID_ID);

这将从平板电脑中获取设备ID,您使用的代码仅适用于手机(在平板电脑上将返回null

qvtsj1bj

qvtsj1bj2#

放置

<uses-permission android:name="android.permission.READ_PHONE_STATE" />

那么
试试这个:

public String deviceId;

然后:

// ------------- get UNIQUE device ID
        deviceId = String.valueOf(System.currentTimeMillis()); // --------
                                                                // backup for
                                                                // tablets etc
        try {
            final TelephonyManager tm = (TelephonyManager) getBaseContext()
                    .getSystemService(Main.TELEPHONY_SERVICE);
            final String tmDevice, tmSerial, tmPhone, androidId;
            tmDevice = "" + tm.getDeviceId();
            tmSerial = "" + tm.getSimSerialNumber();
            androidId = ""
                    + android.provider.Settings.Secure.getString(
                            getContentResolver(),
                            android.provider.Settings.Secure.ANDROID_ID);
            UUID deviceUuid = new UUID(androidId.hashCode(),
                    ((long) tmDevice.hashCode() << 32) | tmSerial.hashCode());
            deviceId = deviceUuid.toString();
        } catch (Exception e) {
            Log.v("Attention", "Nu am putut sa iau deviceid-ul !?");
        }
        // ------------- END get UNIQUE device ID

从这里开始-〉Is there a unique Android device ID?

相关问题