我们自己如何来获取设备名称 呢?答案如下:
在命令行中输入“adb shell”
进入shell之后,再输入“cat /system/buildprop”
其实,设备信息,主要是存放在“/system/buildprop”文件,通过“cat”命令就可以查看了
下面附上ADB命令的详细介绍
adb 介绍
adb的全称为Android Debug Bridge 调试桥,是连接Android手机与PC端的桥梁,通过adb可以管理、 *** 作模拟器和设备,如安装软件、系统升级、运行shell命令等。
管理设备
注:android手机、模拟器统一称为“设备”
adb devices // 显示连接到计算机的设备
adb get-serialno // 获取设备的ID和序列号serialNumber
------------------重启----------------------------------------------
adb reboot // 重启设备
adb reboot bootloader // 重启到bootloader,即刷机模式
adb reboot recovery // 重启到recovery,即恢复模式
------------------发送命令到设备--------------------------------------
adb [-d|-e|-s <serialNumber>] <command>
-d 发送命令给usb连接的设备
-e 发送命令到模拟器设备
-s <serialNumber> 发送命令到指定设备
adb相关
adb kill-server // 终止adb服务进程
adb start-server // 重启adb服务进程
adb root // 已root权限重启adb服务
adb wait-for-device // 在模拟器/设备连接之前把命令转载在adb的命令器中
获取设备硬件信息
adb shell cat /sys/class/net/wlan0/address // 获取mac地址
adb shell cat /proc/cpuinfo // 获取cpu序列号
管理设备app
aapt d badging <apkfile> // 获取apk的packagename 和 classname
------------------安装----------------------------------------------
adb install <apkfile> // 安装apk
adb install -r <apkfile> // 保留数据和缓存文件,重新安装apk,
adb install -s <apkfile> // 安装apk到sd卡
------------------卸载----------------------------------------------
adb uninstall <package> // 卸载app
adb uninstall -k <package> // 卸载app但保留数据和缓存文件
------------------启动app-------------------------------------------
adb shell am start -n <package_name>/<activity_class_name> // 启动应用
------------------查看内存占用----------------------------------------
adb shell top // 查看设备cpu和内存占用情况
adb shell top -m 6 // 查看占用内存前6的app
adb shell top -n 1 // 刷新一次内存信息,然后返回
adb shell procrank // 查询各进程内存使用情况
adb shell kill [pid] // 杀死一个进程
adb shell ps // 查看进程列表
adb shell ps -x [PID] // 查看指定进程状态
adb shell service list // 查看后台services信息
adb shell cat /proc/meminfo // 查看当前内存占用
adb shell cat /proc/iomem // 查看IO内存分区
文件 *** 作
//android中,sdcard代表内置存储,不同系统中tf卡的设备名可能不同,使用查看adb shell ls mnt查看所有存储设备名。
adb remount // 将system分区重新挂载为可读写分区
adb push <local> <remote> // 从本地复制文件到设备
adb pull <remote> <local> // 从设备复制文件到本地
adb shell ls // 列出目录下的文件和文件夹,等同于dos中的dir命令
adb shell cd <folder> // 进入文件夹,等同于dos中的cd 命令
adb shell rename path/oldfilename path/newfilename // 重命名文件
adb shell rm /system/aviapk // 删除system/aviapk
adb shell rm -r <folder> // 删除文件夹及其下面所有文件
adb shell mv path/file newpath/file // 移动文件
adb shell chmod 777 /system/fonts/DroidSansFallbackttf // 设置文件权限
adb shell mkdir path/foldelname // 新建文件夹
adb shell cat <file> // 查看文件内容
方法步骤(以安卓50为例)一、依次点击设定---关于设备---状态。二、现在可以看到安卓设备的IMEI(国际移动设备识别码)唯一编号。三、或者用手机的拨号键盘输入#06#可以d出IMEI
安卓系统手机的DEVICE ID只要很简单的一个命令就可以查看:
1、点击电话,启动拨号界面,然后输入“##8255##”即可进入GTalk Service Monitor界面了。
GTalk Service Monitor界面
2、红圈圈便是Device ID了。
不过显然的,有些用户比其他人更加偏执一些,可以将这些标识中的一个或者多个进行hash运算就很有用,生成的字符串仍然可以唯一标识该设备,但是不会明确的标识实际的设备。例如,使用StringhashCode(),再加上一个UUID,这里有详细的代码》》
您好,1、打开拨号界面。
2、点击电话,启动拨号界面,然后输入“*#*#8255#*#*”即可进入GTalkServiceMonitor界面了。
扩展资料:
AndroidID用于唯一识别一部设备的一次刷机行为,虽然不能完全确定该设备的唯一性(真的唯一性是用IMEI号的),但是可以很大程度上过滤重复设备。
这是移动互联网广告行业,尤其是CPI广告的基础。设备ID非常重要。CPI广告是根据实际安装数量计费的,广告商可以使用androidid来排除重复安装。传递一个AndroidID直接影响到某些广告是否会被放置在某些位置。
在RTB行业中,有很多提供数据的第三方公司,他们根据AndroidID买卖数据,将各种数据对应给用户。
有很多场景和需求你需要用到手机设备的唯一标识符。例如,略。
在Android中,有以下几种方法获取这样的ID。
1 The IMEI: 仅仅只对Android手机有效:
TelephonyManager TelephonyMgr = (TelephonyManager)getSystemService(TELEPHONY_SERVICE);
String szImei = TelephonyMgrgetDeviceId(); // Requires READ_PHONE_STATE
采用此种方法,需要在AndroidManifestxml中加入一个许可:androidpermissionREAD_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
BuildBOARDlength()%10+ BuildBRANDlength()%10 + BuildCPU_ABIlength()%10 + BuildDEVICElength()%10 + BuildDISPLAYlength()%10 + BuildHOSTlength()%10 + BuildIDlength()%10 + BuildMANUFACTURERlength()%10 + BuildMODELlength()%10 + BuildPRODUCTlength()%10 + BuildTAGSlength()%10 + BuildTYPElength()%10 + BuildUSERlength()%10 ; //13 digits
大多数的Build成员都是字符串形式的,我们只取他们的长度信息。我们取到13个数字,并在前面加上“35”。这样这个ID看起来就和15位IMEI一样了。
3 The Android ID , 通常被认为不可信,因为它有时为null。开发文档中说明了:这个ID会改变如果进行了出厂设置。并且,如果某个Andorid手机被Root过的话,这个ID也可以被任意改变。
String m_szAndroidID = SecuregetString(getContentResolver(), SecureANDROID_ID);
Returns: 9774d56d682e549c 无需任何许可。
4 The WLAN MAC Address string, 是另一个唯一ID。但是你需要为你的工程加入androidpermissionACCESS_WIFI_STATE 权限,否则这个地址会为null。
WifiManager wm = (WifiManager)getSystemService(ContextWIFI_SERVICE);
String m_szWLANMAC = wmgetConnectionInfo()getMacAddress();
Returns: 00:11:22:33:44:55 (这不是一个真实的地址。而且这个地址能轻易地被伪造。)WLan不必打开,就可读取些值。
5 The BT MAC Address string, 只在有蓝牙的设备上运行。并且要加入androidpermissionBLUETOOTH 权限
BluetoothAdapter m_BluetoothAdapter = null; // Local Bluetooth adapter
m_BluetoothAdapter = BluetoothAdaptergetDefaultAdapter();
String m_szBTMAC = m_BluetoothAdaptergetAddress();
Returns: 43:25:78:50:93:38 蓝牙没有必要打开,也能读取。
Combined Device ID
综上所述,我们一共有五种方式取得设备的唯一标识。它们中的一些可能会返回null,或者由于硬件缺失、权限问题等获取失败。
但你总能获得至少一个能用。所以,最好的方法就是通过拼接,或者拼接后的计算出的MD5值来产生一个结果。
String m_szLongID = m_szImei + m_szDevIDShort
+ m_szAndroidID+ m_szWLANMAC + m_szBTMAC;
// compute md5
MessageDigest m = null;
try {
m = MessageDigestgetInstance("MD5");
} catch (NoSuchAlgorithmException e) {
eprintStackTrace();
}
mupdate(m_szLongIDgetBytes(),0,m_szLongIDlength());
// get md5 bytes
byte p_md5Data[] = mdigest();
// create a hex string
String m_szUniqueID = new String();
for (int i=0;i<p_md5Datalength;i++) {
int b = (0xFF & p_md5Data[i]);
// if it is a single digit, make sure it have 0 in front (proper padding)
if (b <= 0xF)
m_szUniqueID+="0";
// add number to string
m_szUniqueID+=IntegertoHexString(b);
} // hex string to uppercase
m_szUniqueID = m_szUniqueIDtoUpperCase();
通过以上算法,可产生32位的16进制数据:
9DDDF85AFF0A87974CE4541BD94D5F55
现在你就可以对其进行你的应用了。
以上就是关于如何获得Android设备名称全部的内容,包括:如何获得Android设备名称、Android能够获取到唯一的设备ID吗、如何查看自己安卓手机的Android Device ID等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)