Android 应用程序启动时如何获取手机型号和名称?
你好!我正在开发一款android应用程序,它可以监控手机名称和型号。我正在使用电话服务,但我在如何编写代码获取移动IMEI号码的问题Android 应用程序启动时如何获取手机型号和名称?,android,Android,你好!我正在开发一款android应用程序,它可以监控手机名称和型号。我正在使用电话服务,但我在如何编写代码获取移动IMEI号码的问题 TelephonyManager tm = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE); // get IMEI String imei = tm.getDeviceId(); String phone = tm.getLine1Number(); 但它并不总是可靠的,例如非电
TelephonyManager tm = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
// get IMEI
String imei = tm.getDeviceId();
String phone = tm.getLine1Number();
但它并不总是可靠的,例如非电话设备。您还需要添加权限“android.permission.READ\u PHONE\u STATE”
您可以使用以下功能:
String deviceModel = Build.MODEL;
String deviceBrand = Build.BRAND;
TelephonyManager manager = getSystemService(Context.TELEPHONY_SERVICE);
String imei = manager.getDeviceId();
还要将该权限添加到您的清单中
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
如果你想获得关于你手机的其他信息,你应该阅读链接
public String getDeviceName()
{
String manufacturer = Build.MANUFACTURER;
String model = Build.MODEL;
if (model.toLowerCase().startsWith(manufacturer.toLowerCase())) {
return capitalize(model);
}
else {
return capitalize(manufacturer) + " " + model;
}
}
private String capitalize(String s) {
if (s == null || s.length() == 0) {
return "";
}
char first = s.charAt(0);
if (Character.isUpperCase(first))
{
return s;
} else {
return Character.toUpperCase(first) + s.substring(1);
}
}