当前位置:   article > 正文

获取Android 设备信息——build.prop_android prop获取设备信息

android prop获取设备信息

获取Android设备相关信息

在Android开发中有时需要获取设备信息,一般可以通过ADB命令来获取设备build.prop文件中记录的设备信息,有时也需要在代码中获取这些信息,如下介绍两种可以使用的方法,获取设备相关信息。

build.prop文件

在Android系统中有一个类似Windows系统注册表的文件build.prop。这个文件内定义了系统初始(或永久)的一些参数属性、功能的开放等。通过调整/增加参数可以达到较调系统性能偏重点和附加功能开启的作用。
因此,如果需要获取设备信息,如设备名称、型号、默认分辨率等都可以从这个文件中读取;

adb获取设备信息

ADB,即 Android Debug Bridge,可以通过一些命令来控制Android手机,因此通过adb命令来获取设备信息的方式是十分方便的。
一下为一些常用的设备信息:
[查看设备信息]
[型号]
[电池状况]
[屏幕分辨率]
[屏幕密度]
[显示屏参数]
[android_id]
[IMEI]
[Android 系统版本]
[IP 地址]
[Mac 地址]
[CPU 信息]
[内存信息]
[更多硬件与系统属性]
adb命令如下:adb shell getprop,这个命令可以获取build.prop中的所有信息,如果需要获取其中的指定信息,可以在后面加上需要获取的id(姑且这个称呼),如:
adb shell getprop ro.product.model 设备名称
adb shell wm size 屏幕分辨率
adb shell wm density 屏幕密度
adb shell getprop ro.build.version.release Android系统版本
还有很多信息,可以参考adb shell getprop的输出来找;

Android Jni编程C层获取设备信息

最近一个项目需要在库中获取设备名称,用于判断是否为目标设备,从而控制该库是否可以运行,这时就需要在代码中获取设备信息,可以考虑如下方法:

// An highlighted block
static bool isDeviceNameOK(){
	char deviceName[PROP_VALUE_MAX];
	__system_property_get("ro.product.name", deviceName);
	LOGD("isDeviceNameOK: devices name is %s", deviceName);
	char targetDeviceName[] = "DeviceName";
	int ret =  strcmp(targetDeviceName, deviceName);
	LOGD("isDeviceNameOK: strcmp ret = %d", ret);
	if(0 == ret){
		return true;
	}else{
		return false;
	}
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

isDeviceNameOK函数用于判断目前设备名称与目标设备是否一致,其中targetDeviceName为目标设备名字,__system_property_get为Linux下获取设备信息的方法,"ro.product.name"即为设备名称id(姑且这么称呼);

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/242326
推荐阅读
相关标签
  

闽ICP备14008679号