Android Device ID是Android用户在Google认证过手机的设备唯一标识,当然国内很多Android手机没有经过Google认证,所以一般没有Google官方Android device ID,所以没法充Google play电脑端下载apk:
下面我代码我在Google的亲儿子nexus 6和nexus 5上测试通过可以获取Android Device ID:
private static String getGsfAndroidId(Context context) { Uri URI = Uri.parse("content://com.google.android.gsf.gservices"); String ID_KEY = "android_id"; String params[] = {ID_KEY}; Cursor c = context.getContentResolver().query(URI, null, null, params, null); if (!c.moveToFirst() || c.getColumnCount() < 2) return null; try { return Long.toHexString(Long.parseLong(c.getString(1))); } catch (NumberFormatException e) { return null; } }