获取设备信息

来源:互联网 发布:在淘宝联盟直接下单 编辑:程序博客网 时间:2024/06/03 18:18

获取设备信息

public class Check {    private Context mContext;    /** android系统定制商 */    private String brand = Build.BRAND;    /** 手机型号 */    private String model = Build.MODEL;    /** cpu指令集 */    private String cpuAbi = Build.CPU_ABI;    /** 硬件制造商 */    private String manufacturer = Build.MANUFACTURER;    /** Android版本 */    private String release = Build.VERSION.RELEASE;    /** sdk版本号 */    private String sdkInt = String.valueOf(Build.VERSION.SDK_INT);    /** versionCode */    private String versionCode = String.valueOf(BuildConfig.VERSION_CODE);    /** versionName */    private String versionName = BuildConfig.VERSION_NAME;    /** 补丁id */    private String clientPatchVersionNo = "123";    /** 渠道号 */    private String mChannelID = "";    public interface CallBackInterface {        void callBack(String str);    }    private CallBackInterface mCallBackInterface;    /**     * 检查是否有补丁     *     * @param context     * @param callBack     */    public Check(Context context, CallBackInterface callBack) {        mContext = context;        mCallBackInterface = callBack;    }    /** 设置渠道号 */    public void setChannelID(String channelID) {        mChannelID = channelID;    }    public void startCheck() {        String result = "手机品牌(BRAND):   " + brand + "\n"                + "手机型号(MODEL):   " + model + "\n"                + "cpu指令集(CPU_ABI):   " + cpuAbi + "\n"                + "硬件制造商(MANUFACTURER):   " + manufacturer + "\n"                + "wifi的mac地址(WIFIMAC):   " + getMacAddress() + "\n"                + "设备IMEI(IMEI):   " + getIMEI() + "\n"                + "===================================\n"                + "Android版本(androidversion):   " + release + "\n"                + "sdk版本号(androidSDK):   " + sdkInt + "\n"                + "可用存储控件(availableMemory):   " + getAvailableMemorySize() + "MB\n"                + "yunOS(yunos):   " + isYunOS() + "\n"                + "versionCode(versionCode):   " + versionCode + "\n"                + "versionName(versionName):   " + versionName + "\n"                + "当前补丁id(mFixID):   " + clientPatchVersionNo + "\n"                + "渠道号(channelID):   " + mChannelID + "\n";        mCallBackInterface.callBack(result);    }    /** 获取手机内部剩余存储空间 */    private long getAvailableMemorySize() {        File path = Environment.getDataDirectory();        StatFs stat = new StatFs(path.getPath());        long blockSize = stat.getBlockSize();        long availableBlocks = stat.getAvailableBlocks();        return availableBlocks * blockSize / 1024 / 1024;    }    /** 获取wifi的mac地址 */    private String getMacAddress() {        WifiManager wifiManager = (WifiManager) mContext.getSystemService(Context.WIFI_SERVICE);        return wifiManager.getConnectionInfo().getMacAddress();    }    /** 获取设备IMEI地址 */    private String getIMEI() {        TelephonyManager telephonyManager = (TelephonyManager) mContext.getSystemService(Context.TELEPHONY_SERVICE);        return telephonyManager.getDeviceId();    }    /** 判断是否是yunOS */    private boolean isYunOS() {        String version = null;        String vmName = null;        try {            Method m = Class.forName("android.os.SystemProperties").getMethod("get", new Class[]{String.class});            version = (String) m.invoke((Object) null, new Object[]{"ro.yunos.version"});            vmName = (String) m.invoke((Object) null, new Object[]{"java.vm.name"});        } catch (Exception e) {            e.printStackTrace();        }        return vmName != null && vmName.toLowerCase().contains("lemur") || version != null && version.trim().length() > 0;    }}

0 0
原创粉丝点击