在android开发中经常要上报手机设备的各种信息,将常用的方法汇集如下。有的方法需要添加和申请相应的权限,请小心。
/**
* 手机上报信息工具类
* 2018-05-10
* StoneFu
*/
public class PhoneUtil {
/**
* 获取当前手机系统语言。
*
* @return 返回当前系统语言。例如:当前设置的是“中文-中国”,则返回“zh-CN”
*/
public static String getSystemLanguage() {
return Locale.getDefault().getLanguage();
}
/**
* 获取当前系统上的语言列表(Locale列表)
*
* @return 语言列表
*/
public static Locale[] getSystemLanguageList() {
return Locale.getAvailableLocales();
}
/**
* 获取当前手机系统版本号
*
* @return 系统版本号
*/
public static String getSystemVersion() {
return android.os.Build.VERSION.RELEASE;
}
/**
* 获取手机型号
*
* @return 手机型号
*/
public static String getPhoneModel() {
return android.os.Build.MODEL;
}
/**
* 获取手机厂商
*
* @return 手机厂商
*/
public static String getDeviceBrand() {
return android.os.Build.BRAND;
}
/**
* 获取手机IMEI(需要“android.permission.READ_PHONE_STATE”权限)
*
* @return 手机IMEI
*/
public static String getIMEI(Context ctx) {
TelephonyManager tm = (TelephonyManager) ctx.getSystemService(Activity.TELEPHONY_SERVICE);
if (tm != null) {
return tm.getDeviceId();
}
return null;
}
/***
* 获得手机mac
*/
public static String getPhoneMac(Context context){
WifiManager wifi = (WifiManager)context.getSystemService(Context.WIFI_SERVICE);
WifiInfo info = wifi.getConnectionInfo();
return info.getMacAddress();
}
/***
* 获得sim序列号
* @param context
* @return
*/
public static String getSimSerialNumber(Context context) {
TelephonyManager tm = (TelephonyManager) context.getSystemService(Activity.TELEPHONY_SERVICE);
if (tm != null) {
return tm.getSimSerialNumber();
}
return null;
}
/***
* 获得idfa
* @return
*/
public static String getIDFA(){
return "";
}
/***
* 获得UUID
*/
public static String getUUID(){
String uniqueID = UUID.randomUUID().toString();
return uniqueID;
}
/***
* 获得AndroidID
*/
public static String getAndroidID(Context context){
String androidID = Settings.System.getString(context.getContentResolver(), Settings.System.ANDROID_ID);
return androidID;
}
/***
* 获得版本号
*/
public static String getAppVerison(Context context){
try {
String pkName = context.getPackageName();
String versionName = context.getPackageManager().getPackageInfo(
pkName, 0).versionName;
int versionCode = context.getPackageManager()
.getPackageInfo(pkName, 0).versionCode;
return " " + versionName;
} catch (Exception e) {
}
return null;
}
}
网友评论