此文介绍一些获取Android手机硬件信息的方法 主要是从Build和TelephonyManager中获取 以及使用反射获取SystemProperties
并使用他的get方法获取一些系统隐藏掉的API 以及某些ROM独有的数据 比如OPPO手机自己定制的osVersion ColorOS版本 OPPO手机ROM特有
分别获取了以下内容
- 列表内容
名称 | 接口参数名称 | 备注 | 示例 |
---|---|---|---|
序列号 | getDeviceId | 序列号IMEI | 865872025238821 |
andrlid_id | getString | android_id | bcbc00f09479aa5b |
手机号码 | getLine1Number | 手机号码 | 13117511178 |
手机卡序列号 | getSimSerialNumber | 手机卡序列号 | 89860179328595969501 |
IMSI | getSubscriberId | IMSI | 460017932859596 |
手机卡国家 | getSimCountryIso | 手机卡国家 | cn |
运营商 | getSimOperator | 运营商 | 46001 |
运营商名字 | getSimOperatorName | 运营商名字 | 中国联通 |
国家iso代码 | getNetworkCountryIso | 国家iso代码 | cn |
网络运营商类型 | getNetworkOperator | 返回MCC+MNC代码 | (SIM卡运营商国家代码和运营商网络代码)(IMSI) 46001 |
网络类型名 | getNetworkOperatorName | 返回移动网络运营商的名字(SPN) | 中国联通 |
网络类型 | getNetworkType | 3 | |
手机类型 | getPhoneType | 手机类型 | 1 |
手机卡状态 | getSimState | 1 | |
mac地址 | getMacAddress | mac地址 | a8:a6:68:a3:d9:ef |
蓝牙名称 | getName | HUAWEI TAG-TL00 | |
返回系统版本 | getDeviceSoftwareVersion | null | |
CPU型号 | cpuinfo | CPU的型号 | MT6592 |
固件版本 | getRadioVersion | 无线电固件版本号,通常是不可用的 | MOLY.WR8.W1328.MD.TG.MP.V1.P22, 2014/07/15 19:57 |
Build系列 | android.os.Build | ||
---|---|---|---|
系统版本 | RELEASE | 获取系统版本字符串。如4.1.2 或2.2 或2.3等 | 4.4.4 |
系统版本值 | SDK | 系统的API级别 一般使用下面大的SDK_INT 来查看 | 19 |
品牌 | BRAND | 获取设备品牌 | Huawei |
型号 | MODEL | 获取手机的型号 | HUAWEI G750-T01 |
ID | ID | 设备版本号 | HUAWEITAG-TLOO |
DISPLAY | DISPLAY | 获取设备显示的版本包(在系统设置中显示为版本号)和ID一样 | TAG-TLOOCO1B166 |
产品名 | PRODUCT | 整个产品的名称 | G750-T01 |
制造商 | MANUFACTURER | 获取设备制造商 | HUAWEI |
设备名 | DEVICE | 获取设备驱动名称 | hwG750-T01 |
硬件 | HARDWARE | 设备硬件名称,一般和基板名称一样(BOARD) | mt6592 |
指纹 | FINGERPRINT | 设备的唯一标识。由设备的多个信息拼接合成 | Huawei/G750-T01/hwG750-T01:4.2.2/HuaweiG750-T01/C00B152:user/ota-rel-keys,release-keys |
串口序列号 | SERIAL | 返回串口序列号 | YGKBBBB5C1711949 |
设备版本类型 | TYPE | 主要为user 或eng. | user |
描述build的标签 | TAGS | 设备标签。如release-keys 或测试的 test-keys | release-keys |
设备主机地址 | HOST | 设备主机地址 | scmbuild |
设备用户名 | USER | 基本上都为android-build | queen |
固件开发版本代号 | codename | 设备当前的系统开发代号,一般使用REL代替 | REL |
源码控制版本号 | build_incremental | 系统源代码控制值,一个数字或者git hash值 | C01B166 |
主板 | board | 获取设备基板名称 | TAG-TL00 |
主板引导程序 | bootloader | 获取设备引导程序版本号 | unkonwn |
Build时间 | time | Build时间 | 1476084456000 |
系统的API级别 | SDK_INT | 数字表示 | 19 |
cpu指令集1 | CPU_ABI | 获取设备指令集名称(CPU的类型) | arm64-v8a |
cpu指令集2 | CPU_ABI2 |
WifiManager | WIFI相关 | ||
---|---|---|---|
蓝牙地址 | getAddress | 蓝牙地址MAC地址 | 6a:cd:57:f2:3b:59 |
无线路由器名 | getSSID | WIFI名字 | 210e03fcf0 |
无线路由器地址 | getBSSID | ce:ea:8c:1a:5c:b2 | |
内网ip(wifl可用) | getIpAddress | 可以用代码转成192.168形式 | -2023511872 |
Display | 屏幕相关 | ||
---|---|---|---|
屏幕密度 | density | 屏幕密度(像素比例:0.75/1.0/1.5/2.0) | 2.0 |
屏幕密度 | densityDpi | 屏幕密度(每寸像素:120/160/240/320) | 480 |
手机内置分辨率 | getWidth | 内置好的不准确已废弃API | 720 |
手机内置分辨率 | getHeight | 1184 | |
x像素 | xdpi | 屏幕x方向每英寸像素点数 | 422.03 |
Y像素 | ydpi | 屏幕y方向每英寸像素点数 | 424.069 |
字体缩放比例 | scaledDensity | 2.0 |
代码
写的很烂 早期作品 千万不要喷我啊
private TelephonyManager phone;
private WifiManager wifi;
private Display display;
private DisplayMetrics metrics;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
phone = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE);
display = getWindowManager().getDefaultDisplay();
metrics = getResources().getDisplayMetrics();
init();
}
private void init() {
DisplayMetrics book=new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(book);
try {
Class localClass = Class.forName("android.os.SystemProperties");
Object localObject1 = localClass.newInstance();
Object localObject2 = localClass.getMethod("get", new Class[] { String.class, String.class }).invoke(localObject1, new Object[] { "gsm.version.baseband", "no message" });
Object localObject3 = localClass.getMethod("get", new Class[] { String.class, String.class }).invoke(localObject1, new Object[] { "ro.build.display.id",""});
setEditText(R.id.get,localObject2+"");
setEditText(R.id.osVersion,localObject3+"");
} catch (Exception e) {
e.printStackTrace();
}
//获取网络连接管理者
ConnectivityManager connectionManager = (ConnectivityManager)
getSystemService(CONNECTIVITY_SERVICE);
//获取网络的状态信息,有下面三种方式
NetworkInfo networkInfo = connectionManager.getActiveNetworkInfo();
setEditText(R.id.lianwang,networkInfo.getType()+"");
setEditText(R.id.lianwangname,networkInfo.getTypeName());
setEditText(R.id.imei, phone.getDeviceId());
setEditText(R.id.deviceversion,phone.getDeviceSoftwareVersion());
setEditText(R.id.imsi, phone.getSubscriberId());
setEditText(R.id.number, phone.getLine1Number());
setEditText(R.id.simserial, phone.getSimSerialNumber());
setEditText(R.id.simoperator,phone.getSimOperator());
setEditText(R.id.simoperatorname, phone.getSimOperatorName());
setEditText(R.id.simcountryiso, phone.getSimCountryIso());
setEditText(R.id.workType,phone.getNetworkType()+"");
setEditText(R.id.netcountryiso,phone.getNetworkCountryIso());
setEditText(R.id.netoperator,phone.getNetworkOperator());
setEditText(R.id.netoperatorname,phone.getNetworkOperatorName());
setEditText(R.id.radiovis,android.os.Build.getRadioVersion());
setEditText(R.id.wifimac, wifi.getConnectionInfo().getMacAddress());
setEditText(R.id.getssid,wifi.getConnectionInfo().getSSID());
setEditText(R.id.getbssid,wifi.getConnectionInfo().getBSSID());
setEditText(R.id.ip,wifi.getConnectionInfo().getIpAddress()+"");
setEditText(R.id.bluemac, BluetoothAdapter.getDefaultAdapter()
.getAddress());
setEditText(R.id.bluname, BluetoothAdapter.getDefaultAdapter().getName()
);
setEditText(R.id.cpu,getCpuName());
setEditText(R.id.andrlid_id,
Settings.Secure.getString(getContentResolver(), Settings.Secure.ANDROID_ID));
setEditText(R.id.serial,android.os.Build.SERIAL);
setEditText(R.id.brand,android.os.Build.BRAND);
setEditText(R.id.tags, android.os.Build.TAGS);
setEditText(R.id.device,android.os.Build.DEVICE);
setEditText(R.id.fingerprint,android.os.Build.FINGERPRINT);
setEditText(R.id.bootloader, Build.BOOTLOADER);
setEditText(R.id.release, Build.VERSION.RELEASE);
setEditText(R.id.sdk,Build.VERSION.SDK);
setEditText(R.id.sdk_INT,Build.VERSION.SDK_INT+"");
setEditText(R.id.codename,Build.VERSION.CODENAME);
setEditText(R.id.incremental,Build.VERSION.INCREMENTAL);
setEditText(R.id.cpuabi, android.os.Build.CPU_ABI);
setEditText(R.id.cpuabi2, android.os.Build.CPU_ABI2);
setEditText(R.id.board, android.os.Build.BOARD);
setEditText(R.id.model, android.os.Build.MODEL);
setEditText(R.id.product, android.os.Build.PRODUCT);
setEditText(R.id.type, android.os.Build.TYPE);
setEditText(R.id.user, android.os.Build.USER);
setEditText(R.id.disply, android.os.Build.DISPLAY);
setEditText(R.id.hardware, android.os.Build.HARDWARE);
setEditText(R.id.host, android.os.Build.HOST);
setEditText(R.id.changshang, android.os.Build.MANUFACTURER);
setEditText(R.id.phonetype,phone.getPhoneType()+"");
setEditText(R.id.simstate,phone.getSimState()+"");
setEditText(R.id.b_id, Build.ID);
setEditText(R.id.gjtime,android.os.Build.TIME+"");
setEditText(R.id.width,display.getWidth()+"");
setEditText(R.id.height,display.getHeight()+"");
setEditText(R.id.dpi,book.densityDpi+"");
setEditText(R.id.density,book.density+"");
setEditText(R.id.xdpi,book.xdpi+"");
setEditText(R.id.ydpi,book.ydpi+"");
setEditText(R.id.scaledDensity,book.scaledDensity+"");
//setEditText(R.id.wl,getNetworkState(this)+"");
// 方法2
DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
int width=dm.widthPixels;
int height=dm.heightPixels;
setEditText(R.id.xwidth,width+"");
setEditText(R.id.xheight,height+"");
}
private void setEditText(int id, String s) {
((TextView) this.findViewById(id)).setText(s);
}
/**
* 获取CPU型号
* @return
*/
public static String getCpuName(){
String str1 = "/proc/cpuinfo";
String str2 = "";
try {
FileReader fr = new FileReader(str1);
BufferedReader localBufferedReader = new BufferedReader(fr);
while ((str2=localBufferedReader.readLine()) != null) {
if (str2.contains("Hardware")) {
return str2.split(":")[1];
}
}
localBufferedReader.close();
} catch (IOException e) {
}
return null;
}
XML
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.lyq.test.MainActivity">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<RelativeLayout style="@style/Item.Layout">
<TextView
android:id="@+id/lianwang"
style="@style/Item.Edit"
android:inputType="number" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="联网方式"
/>
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:id="@+id/lianwangname"
style="@style/Item.Edit"
android:inputType="number" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="联网方式名称"
/>
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:id="@+id/imei"
style="@style/Item.Edit"
android:hint="请输入IMEI"
android:inputType="number" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="IMEI"
/>
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout" >
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="返回系统版本"/>
<TextView
android:id="@+id/deviceversion"
style="@style/Item.Edit"
android:hint="返回系统版本"
/>
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="IMSI"/>
<TextView
android:id="@+id/imsi"
style="@style/Item.Edit"
android:hint="请输入IMSI"
/>
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="手机号码"/>
<TextView
android:id="@+id/number"
style="@style/Item.Edit"
android:hint="请输入手机号码"
/>
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="手机卡序列号" />
<TextView
android:id="@+id/simserial"
style="@style/Item.Edit"
android:inputType="number" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="运营商" />
<TextView
android:id="@+id/simoperator"
style="@style/Item.Edit"
android:hint="simoperator"
/>
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="运营商名字" />
<TextView
android:id="@+id/simoperatorname"
style="@style/Item.Edit"
android:hint="simoperator"
android:inputType="number" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="国家iso代码" />
<TextView
android:id="@+id/simcountryiso"
style="@style/Item.Edit"
android:hint="请输入"
android:inputType="number" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="网络类型" />
<TextView
android:id="@+id/workType"
style="@style/Item.Edit"
android:hint="网络类型"
android:inputType="number" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="手机卡国家" />
<TextView
android:id="@+id/netcountryiso"
style="@style/Item.Edit"
android:hint="手机卡国家"
android:inputType="number" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="网络运营商类型" />
<TextView
android:id="@+id/netoperator"
style="@style/Item.Edit"
android:hint="网络运营商类型"
android:inputType="number" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="网络类型名" />
<TextView
android:id="@+id/netoperatorname"
style="@style/Item.Edit"
android:hint="网络类型名"
android:inputType="number" />
</RelativeLayout>
<!-- <RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="网络类型" />
<TextView
android:id="@+id/wl"
style="@style/Item.Edit"
android:hint="网络类型"
android:inputType="number" />
</RelativeLayout>
-->
<RelativeLayout style="@style/Item.Layout" >
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="固件版本" />
<TextView
android:id="@+id/radiovis"
style="@style/Item.Edit"
android:hint="请输入" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="mac地址" />
<TextView
android:id="@+id/wifimac"
style="@style/Item.Edit"
android:hint="mac地址" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="无线路由器名" />
<TextView
android:id="@+id/getssid"
style="@style/Item.Edit"
android:hint="无线路由器名" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="无线路由器地址" />
<TextView
android:id="@+id/getbssid"
style="@style/Item.Edit"
android:hint="无线路由器地址" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="蓝牙地址" />
<TextView
android:id="@+id/bluemac"
style="@style/Item.Edit"
android:hint="蓝牙地址" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="蓝牙名称" />
<TextView
android:id="@+id/bluname"
style="@style/Item.Edit"
android:hint="请输入蓝牙name" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="andrlid_id" />
<TextView
android:id="@+id/andrlid_id"
style="@style/Item.Edit"
android:hint="请输入Android ID" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="串口序列号" />
<TextView
android:id="@+id/serial"
style="@style/Item.Edit"
android:hint="串口序列号" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="品牌" />
<TextView
android:id="@+id/brand"
style="@style/Item.Edit"
android:hint="品牌" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="get" />
<TextView
android:id="@+id/get"
style="@style/Item.Edit"
android:hint="get" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="osVersion" />
<TextView
android:id="@+id/osVersion"
style="@style/Item.Edit"
android:hint="osVersion" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="描述build的标签" />
<TextView
android:id="@+id/tags"
style="@style/Item.Edit"
android:hint="描述build的标签" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="设备名" />
<TextView
android:id="@+id/device"
style="@style/Item.Edit"
android:hint="设备名" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="主板引导程序" />
<TextView
android:id="@+id/bootloader"
style="@style/Item.Edit"
android:hint="请输入" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="系统版本" />
<TextView
android:id="@+id/release"
style="@style/Item.Edit"
android:hint="系统版本" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="系统版本值" />
<TextView
android:id="@+id/sdk"
style="@style/Item.Edit"
android:hint="系统版本值" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="系统的API级别" />
<TextView
android:id="@+id/sdk_INT"
style="@style/Item.Edit"
android:hint="系统的API级别" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="固件开发版本代号" />
<TextView
android:id="@+id/codename"
style="@style/Item.Edit"
android:hint="固件开发版本代号" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="源码控制版本号" />
<TextView
android:id="@+id/incremental"
style="@style/Item.Edit"
android:hint="源码控制版本号" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="CPU型号" />
<TextView
android:id="@+id/cpu"
style="@style/Item.Edit"
android:hint="CPU型号" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="cpu指令集" />
<TextView
android:id="@+id/cpuabi"
style="@style/Item.Edit"
android:hint="cpu指令集" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="cpu指令集2" />
<TextView
android:id="@+id/cpuabi2"
style="@style/Item.Edit"
android:hint="" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="主板" />
<TextView
android:id="@+id/board"
style="@style/Item.Edit"
android:hint="请输入" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="型号" />
<TextView
android:id="@+id/model"
style="@style/Item.Edit"
android:hint="请输入型号" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="产品名称" />
<TextView
android:id="@+id/product"
style="@style/Item.Edit"
android:hint="请输入型号" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="设备版本类型" />
<TextView
android:id="@+id/type"
style="@style/Item.Edit"
android:hint="设备版本类型" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="设备用户名" />
<TextView
android:id="@+id/user"
style="@style/Item.Edit"
android:hint="设备用户名" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="显示屏幕参数" />
<TextView
android:id="@+id/disply"
style="@style/Item.Edit"
android:hint="请输入" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="硬件名称" />
<TextView
android:id="@+id/hardware"
style="@style/Item.Edit"
android:hint="请输入" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="设备主机地址" />
<TextView
android:id="@+id/host"
style="@style/Item.Edit"
android:hint="设备主机地址" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="制造商" />
<TextView
android:id="@+id/changshang"
style="@style/Item.Edit"
android:hint="制造商" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="手机类型" />
<TextView
android:id="@+id/phonetype"
style="@style/Item.Edit"
android:hint="请输入" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="手机卡状态" />
<TextView
android:id="@+id/simstate"
style="@style/Item.Edit"
android:hint="手机卡状态" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="ID" />
<TextView
android:id="@+id/b_id"
style="@style/Item.Edit"
android:hint="ID" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="内网ip" />
<TextView
android:id="@+id/ip"
style="@style/Item.Edit"
android:hint="内网ip" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Build时间" />
<TextView
android:id="@+id/gjtime"
style="@style/Item.Edit"
android:hint="Build时间" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="指纹" />
<TextView
android:id="@+id/fingerprint"
style="@style/Item.Edit"
android:hint="指纹" />
</RelativeLayout>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text=" ---------------手机屏幕信息--------------"
/>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="手机内置 宽" />
<TextView
android:id="@+id/width"
style="@style/Item.Edit"
android:hint="请输入" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="手机内置 高" />
<TextView
android:id="@+id/height"
style="@style/Item.Edit"
android:hint="请输入" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="当前分辨率" />
<TextView
android:id="@+id/xwidth"
style="@style/Item.Edit"
android:hint="当前分辨率" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="当前分辨率" />
<TextView
android:id="@+id/xheight"
style="@style/Item.Edit"
android:hint="当前分辨率" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="dpi" />
<TextView
android:id="@+id/dpi"
style="@style/Item.Edit"
android:hint="请输入" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="density" />
<TextView
android:id="@+id/density"
style="@style/Item.Edit"
android:hint="请输入" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="x像素" />
<TextView
android:id="@+id/xdpi"
style="@style/Item.Edit"
android:hint="x像素" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Y像素" />
<TextView
android:id="@+id/ydpi"
style="@style/Item.Edit"
android:hint="Y像素" />
</RelativeLayout>
<RelativeLayout style="@style/Item.Layout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="字体缩放比例" />
<TextView
android:id="@+id/scaledDensity"
style="@style/Item.Edit"
android:hint="字体缩放比例" />
</RelativeLayout>
</LinearLayout>
</ScrollView>
values配置信息
<style name="Item">
<item name="android:textColor">@android:color/black</item>
</style>
<style name="Item.Layout">
<item name="android:layout_width">match_parent</item>
<item name="android:layout_height">50dip</item>
<item name="android:orientation">vertical</item>
</style>
<style name="Item.Label">
<item name="android:layout_width">match_parent</item>
<item name="android:layout_height">wrap_content</item>
</style>
<style name="Item.Edit">
<item name="android:layout_width">match_parent</item>
<item name="android:layout_height">match_parent</item>
<item name="android:layout_marginLeft">120dip</item>
<item name="android:layout_marginRight">100dip</item>
</style>
我对某些函数的描述可能不太对 不要喷我哦
还有某些数据会获取不到 尤其手机号码 市面上大部分的SIM卡内置都没有手机号码 所以getLine1Number 根本就取不到
想获取的朋友可以google 百度 一般都是用发短信来实现的