android中获取设备信息

来源:互联网 发布:剑灵捏人数据 淘宝 编辑:程序博客网 时间:2024/06/05 08:53

 /**     * 获取手机的生产厂商,型号     */    public static String getManufacture() {        String id = android.os.Build.ID;//设备id        String device = android.os.Build.DEVICE;//设备名字        String manufacturer = Build.MANUFACTURER;//设备生产商        String brand = Build.BRAND;//设备品牌        String product = Build.PRODUCT;//设备产品名字        String model = Build.MODEL;//设备型号        return android.os.Build.MANUFACTURER + " " + android.os.Build.MODEL;    }    /**     * 获取手机的androidId     *     * @param context     * @return     */    public static String getAndroidId(Context context) {        String androidId = Settings.Secure.getString(context.getContentResolver(), Settings.Secure.ANDROID_ID);        return androidId == null ? "0000000000000000" : androidId;    }    /**     * 获取 系统版本名字     *     * @return     */    public static String getSysVersionName() {        int sdkInt = Build.VERSION.SDK_INT;//系统版本号        return android.os.Build.VERSION.RELEASE;//系统版本名字    }    /**     * 返回当前程序版本名     */    public static String getAppVersionName(Context context) {        String versionName = "";        try {            // ---get the package info---            PackageManager pm = context.getPackageManager();            PackageInfo pi = pm.getPackageInfo(context.getPackageName(), 0);            versionName = pi.versionName;            if (versionName == null || versionName.length() <= 0) {                return "";            }        } catch (Exception e) {        }        return versionName;    }    /**     * 获取imei信息     *     * @param context     * @return     */    public static String getIMEI(Context context) {        String imei = "";        if (isPrmissionExist(context, "android.permission.READ_PHONE_STATE")) {            TelephonyManager telephonyManager = (TelephonyManager) context                    .getSystemService(Context.TELEPHONY_SERVICE);            imei = telephonyManager.getDeviceId();            imei = imei == null ? "" : imei;            Log.v(TAG, "imei:" + imei);        }        return imei;    }    /**     * 获取imsi信息     *     * @param context     * @return     */    public static String getIMSI(Context context) {        String imsi = "";        if (isPrmissionExist(context, "android.permission.READ_PHONE_STATE")) {            TelephonyManager telephonyManager = (TelephonyManager) context                    .getSystemService(Context.TELEPHONY_SERVICE);            imsi = telephonyManager.getSubscriberId();            if (imsi == null) {                imsi = "";            }            Log.v(TAG, "imsi:" + imsi);        }        return imsi;    }    //判断权限是否取得    public static boolean isPrmissionExist(Context context, String prissionName) {        PackageManager pm = context.getPackageManager();        boolean permission = (PackageManager.PERMISSION_GRANTED == pm.checkPermission(prissionName, context.getPackageName()));        return permission;    }    /**     * 获取设备的语言设置,例如:zh、en * * @param context * @return     */    public static String getLanguage(Context context) {        return Locale.getDefault().getLanguage();    }    /**     * 获取mac地址     *     * @param context     * @return     */    public static String getMAC(Context context) {        WifiManager wifiManager = (WifiManager) context                .getSystemService(Context.WIFI_SERVICE);        WifiInfo info = wifiManager.getConnectionInfo();        if (info != null) {            String mac = info.getMacAddress();            if (mac == null) {                mac = "";            }            return mac;        } else {            return "";        }    }    /**     * 获取手机PLMN     *     * @param context     * @return     */    public static String getPLMN(Context context) {        TelephonyManager manager = (TelephonyManager) context                .getSystemService(Context.TELEPHONY_SERVICE);        String plmn = manager.getSimOperator();        if (plmn == null || plmn.equals("")) {            return "";        } else {            if (plmn.length() > 6) {                plmn = plmn.split(",")[0].replace(",", "");            }            return plmn.replace(",", "");        }    }    /**     * 判断手机是否有SIM卡     */    public static boolean isSimAvaliable(Context context) {        boolean isAlive = false;        android.telephony.TelephonyManager tm = (TelephonyManager) context                .getSystemService(Context.TELEPHONY_SERVICE);        if (tm.getSimState() == TelephonyManager.SIM_STATE_READY) {            isAlive = true;        } else {            isAlive = false;        }        return isAlive;    }    /**     * 判断运营商     * 返回手机运营商名称,在调用支付前调用作判断     * IMSI:国际移动用户识别码(唯一标识),IMSI = MCC + MNC + MSIN,     * 其中MCC是指移动台国家代码(3 位,中国460),MNC是指移动网代码(2 位中国00),MSIN是指移动用户识别号码(10 位 )     * {"ChinaMobile":["00","02","04","07"],"ChinaUnicom":["01","06","09"],"ChinaTelecom":["03","05","11"]}     */    public String getProvidersName(Context context) {        String providersName = null;        TelephonyManager telephonyManager = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);        String IMSI = telephonyManager.getSubscriberId();        if (IMSI == null) {            return "unknow";        }        if (IMSI.startsWith("46000") || IMSI.startsWith("46002")) {            providersName = "中国移动";        } else if (IMSI.startsWith("46001")) {            providersName = "中国联通";        } else if (IMSI.startsWith("46003")) {            providersName = "中国电信";        }        try {            providersName = URLEncoder.encode("" + providersName, "UTF-8");        } catch (UnsupportedEncodingException e) {            e.printStackTrace();        }        Log.i("ProvidersName", "--当前卡为:" + providersName);        return providersName;    }

android获取 屏幕信息

android获取 app信息