android有哪些设备id
Ⅰ 如何获取Android移动终端设备唯一ID
我自己以前用的一个工具类,用到了uuid,给你一用吧
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.RandomAccessFile;
import java.util.UUID;
import android.content.Context;
public class Installation {
private static String sID = null;
private static final String INSTALLATION = "INSTALLATION";
public synchronized static String id(Context context) {
if (sID == null) {
File installation = new File(context.getFilesDir(), INSTALLATION);
try {
if (!installation.exists())
writeInstallationFile(installation);
sID = readInstallationFile(installation);
} catch (Exception e) {
throw new RuntimeException(e);
}
}
return sID;
}
private static String readInstallationFile(File installation)
throws IOException {
RandomAccessFile f = new RandomAccessFile(installation, "r");
byte[] bytes = new byte[(int) f.length()];
f.readFully(bytes);
f.close();
return new String(bytes);
}
private static void writeInstallationFile(File installation)
throws IOException {
FileOutputStream out = new FileOutputStream(installation);
String id = UUID.randomUUID().toString();
out.write(id.getBytes());
out.close();
}
}
// 调用方法
// 获取标识
String SerialNumber = "";
SerialNumber = Installation.id(mContext); // 静态方法,直接调用
Ⅱ Android如何获取到唯一的设备ID
如果你想要得到设备本身的唯一值, TM.getDeviceId()应该是足够了。不过显然的,有些用户内比其他人更加偏执一些,可以将容这些标识中的一个或者多个进行hash运算就很有用,生成的字符串仍然可以唯一标识该设备,但是不会明确的标识实际的设备。例如,使用String.hashCode(),再加上一个UUID,这里有详细的代码》》
Ⅲ 安卓设备的 device id 是什么,具体有什么用
用 android 的官方文档来说,device id 不是用于标识你的设备的。他是标识一个设备的一次刷机行为的。
换句专话说,每次三清,刷机,这个ID会改变,(理论上是如此,当然不排除某些设备没有按照这个标准实现)
对 Google 来说,第一次使用 android 设备需要输入 google 帐号,修改 google 主帐号必须「恢复出场设置」(相当于刷机一次),因此对 google 来说一个 device id 实际上对应一个 google 帐号。
记住你的设备不等于记住你的人,因为一个设备可能卖二手,而且一个设备也完全可能给不同的人共用,而且一个人也会经常更换手机(比如我)。
知道你的设备在哪里也不等于知道你在哪里,因为一个人完全可以有五个不同的设备都同时在激活状态,并且他们被放在不同的地理位置(比如我)。
所以总的来说,这个 ID 用的属人很少,除了 google 应用自身以外。
Ⅳ 如何查看自己安卓手机的Android Device ID
1、打开拨号界面。
(4)android有哪些设备id扩展阅读:
AndroidID用于唯一识别一部设备的一次刷机行为,虽然不能完全确定该设备的唯一性(真的唯一性是用IMEI号的),但是可以很大程度上过滤重复设备。
这是移动互联网广告行业,尤其是CPI广告的基础。设备ID非常重要。CPI广告是根据实际安装数量计费的,广告商可以使用androidid来排除重复安装。传递一个AndroidID直接影响到某些广告是否会被放置在某些位置。
在RTB行业中,有很多提供数据的第三方公司,他们根据AndroidID买卖数据,将各种数据对应给用户。
Ⅳ Android获取设备唯一ID的几种方式
1. The IMEI: 仅仅只对Android手机有效:
TelephonyManager TelephonyMgr = (TelephonyManager)getSystemService(TELEPHONY_SERVICE);
String szImei = TelephonyMgr.getDeviceId(); // Requires READ_PHONE_STATE
采用此种方法,需要在AndroidManifest.xml中加入一个许可:android.permission.READ_PHONE_STATE,并且用户应当允许安装此应用。作为手机来讲,IMEI是唯一的,它应该类似于 359881030314356(除非你有一个没有量产的手机(水货)它可能有无效的IMEI,如:0000000000000)。
2. Pseudo-Unique ID, 这个在任何Android手机中都有效
有一些特殊的情况,一些如平板电脑的设置没有通话功能,或者你不愿加入READ_PHONE_STATE许可。而你仍然想获得唯一序列号之类的东西。这时你可以通过取出ROM版本、制造商、CPU型号、以及其他硬件信息来实现这一点。这样计算出来的ID不是唯一的(因为如果两个手机应用了同样的硬件以及Rom 镜像)。但应当明白的是,出现类似情况的可能性基本可以忽略。要实现这一点,你可以使用Build类:
String m_szDevIDShort = "35" + //we make this look like a valid IMEI
Build.BOARD.length()%10+ Build.BRAND.length()%10 + Build.CPU_ABI.length()%10 + Build.DEVICE.length()%10 + Build.DISPLAY.length()%10 + Build.HOST.length()%10 + Build.ID.length()%10 + Build.MANUFACTURER.length()%10 + Build.MODEL.length()%10 + Build.PRODUCT.length()%10 + Build.TAGS.length()%10 + Build.TYPE.length()%10 + Build.USER.length()%10 ; //13 digits
大多数的Build成员都是字符串形式的,我们只取他们的长度信息。我们取到13个数字,并在前面加上“35”。这样这个ID看起来就和15位IMEI一样了。
Ⅵ 如何查看android的设备id
java获得android的imei号步骤: 1、权限添加: <uses-permission android:name="android.permission.READ_PHONE_STATE" /> 2、调用android的api TelephonyManager telephonyManager = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE); String IMEI = telephonyManager.getDeviceId(); 3、adb命令获得内: adb shell mpsys iphonesubinfo 4、任何手机都可容以在拨打电话的界面输入*#06# 来查看IMEI。
Ⅶ 如何获取android设备id
Android设备不同类型的识别设备ID。
· 唯一编号(,MEID,ESN,IMSI)
· MAC地址
· 序列号
· ANDROID_ID
唯一编号(IMEI,MEID,ESN,IMSI)
说明在以前,当Android设备均作为电话使用时,寻找唯一标识号比较简单:()可用于找到(取决于网络技术)手机硬件唯一的IMEI,MEID,ESN和IMSI编号。
TelephonyManager.getDeviceId
IMEI,MEID,ESN,IMSI的定义如下:
•IMEI(国际移动设备识别码)唯一编号,用于识别 GSM,WCDMA手机以及一些卫星电话(移动设备识别码)全球唯一编号,用于识别CDMA移动电台设备的物理硬件,MEID出现的目的是取代ESN号段(电子序列号)(电子序列号)唯一编号,用于识别CDMA手机(国际移动用户识别码)与所有GSM和UMTS网络手机用户相关联的唯一识别编号如需要检索设备的ID,在项目中要使用以下代码:
•MEID
•ESN
•IMSI
import android.telephony.TelephonyManager;
import android.content.Context;
String imeistring = null;
String imsistring = null;
{
TelephonyManager telephonyManager;
telephonyManager =
( TelephonyManager )getSystemService( Context.TELEPHONY_SERVICE );
/*
* getDeviceId() function Returns the unique device ID.
* for example,the IMEI for GSM and the MEID or ESN for CDMA phones.
*/
imeistring = telephonyManager.getDeviceId();
/*
* getSubscriberId() function Returns the unique subscriber ID,
* for example, the IMSI for a GSM phone.
*/
imsistring = telephonyManager.getSubscriberId();
}
Ⅷ 如何查看自己安卓手机的Android Device ID
方法如下:
1、打开拨号界面。
红圈圈住的便是Device ID了。
Ⅸ 怎么获取android设备id
(1)DEVICE_ID
Android系统为开发者提供的用于标识手机设备的串号
TelephoneManager tm=TelephoneManager.getSystemService(Context.TELEPHONE_SERVICE);
tm.getDeviceId();
缺陷:
(1)非手机设备
(2)权限问题
(2)ANDROID_ID
在设备首次启动专时,属系统会随机生成一个64位的数字,并把这个数字以16进制字符串的形式保存下来,这个16进制的字符串就是ANDROID_ID
String ANDROID_ID=Setting.System.getString(getContentResolver(),Setting.System.ANDROID_ID);
缺陷:
(1)厂商Bug:不同的设备可能会产生相同的ANDROID_ID
(2)厂商Bug:有些设备返回的值为null
(3)Serial Number
Android系统2.3版本以上可以通过下面的方法得到Serial Number,且非手机设备也可以通过该接口获取。
String serial=Andorid.os.Build.SERIAL;
Ⅹ 安卓开发设备id干什么用的
android设备的设备id是惟一确定一台设备的ID标识,即不同的设备是不相同的,不内会重复,容而且是固定不变的,除非刷机。
在开发中,如果现场有多台设备,而程序是无需申请帐号和密码登陆的那种,就可以利用这个设备ID来区分不同的设备。比如说餐厅里用平板电脑点菜,可以把设备ID跟桌号绑定起来,这样点餐之后就知道是哪桌在点菜。(这种场合不需要帐号密码登陆,用设备ID区分最合适了)。