package com.lcjian.library.util.common;
|
|
import android.app.Application;
|
import android.content.Context;
|
import android.content.pm.PackageInfo;
|
import android.content.pm.PackageManager;
|
import android.provider.Settings;
|
import android.telephony.TelephonyManager;
|
|
import java.util.ArrayList;
|
import java.util.List;
|
|
import static android.content.Context.TELEPHONY_SERVICE;
|
|
public class DeviceUtil {
|
|
|
private static List<PackageInfo> installedPackages;
|
private static String imei;
|
private static String android_id;
|
private static String imsi;
|
|
public static synchronized List<PackageInfo> getInstalledPackagesCache(Context context) {
|
if (installedPackages != null) {
|
return installedPackages;
|
}
|
PackageManager pManager = context.getPackageManager();
|
//获取手机内所有应用
|
installedPackages = pManager.getInstalledPackages(0);
|
return installedPackages;
|
}
|
|
|
public static synchronized List<String> getInstalledPackageNamesCache(Context context) {
|
List<PackageInfo> list = getInstalledPackagesCache(context);
|
List<String> nameList = new ArrayList<>();
|
for (PackageInfo pi : list) {
|
nameList.add(pi.packageName);
|
}
|
return nameList;
|
}
|
|
public static synchronized String getImeiCache(Context context) {
|
if(imei!=null){
|
return imei;
|
}
|
|
TelephonyManager manager = (TelephonyManager) context.getSystemService(TELEPHONY_SERVICE);
|
try {
|
imei = manager.getDeviceId();
|
}catch(Exception e){
|
|
}
|
imei = imei == null ? "" : imei;
|
return imei;
|
}
|
|
public static synchronized String getAndroidIdCache(Context context){
|
if(android_id!=null){
|
return android_id;
|
}
|
try {
|
android_id = Settings.System.getString(context.getContentResolver(), Settings.Secure.ANDROID_ID);
|
}catch(Exception e){
|
|
}
|
android_id = android_id == null ? "" : android_id;
|
return android_id;
|
}
|
|
|
public static synchronized String getImsiCache(Context context){
|
if(imsi!=null){
|
return imsi;
|
}
|
TelephonyManager mTelephonyMgr = (TelephonyManager) context
|
.getSystemService(Context.TELEPHONY_SERVICE);
|
try {
|
imsi = mTelephonyMgr.getSubscriberId();
|
}catch(Exception e){
|
|
}
|
imsi = imsi == null ? "" : imsi;
|
return imsi;
|
}
|
|
|
}
|