首页 > 代码库 > 关于手机系统信息的总结
关于手机系统信息的总结
获取IMEI号:
/** * 获取IMEI号 * * @Description: * @param @param activity * @param @return * @return String */ public static String getIMEI(Activity activity) { TelephonyManager manager = (TelephonyManager) activity .getSystemService(Context.TELEPHONY_SERVICE); return manager.getDeviceId(); }
/** * 获取IMSI * * @Description: * @param @param activity * @param @return * @return String */ public static String getIMSI(Activity activity) { TelephonyManager manager = (TelephonyManager) activity .getSystemService(Context.TELEPHONY_SERVICE); return manager.getSubscriberId(); }
/** * 手机型号 * * @Description: * @param @return * @return String */ public static String getPhoneModel() { return android.os.Build.MODEL; }
/** * 系统版本(数值) * * @Description: * @param @return * @return int */ public static int getPhoneSdkVersionInt() { return Build.VERSION.SDK_INT; }
/** * 系统版本(字符串) * * @Description: * @param @return * @return String */ public static String getPhoneSDKVersionChar() { return Build.VERSION.RELEASE; }
/** * @Description:APP版本(字符串) * @param @param activity * @param @return * @return String */ public static String getAppVersionChars(Activity activity) { PackageManager packageManager = activity.getPackageManager(); PackageInfo packageInfo = null; try { packageInfo = packageManager.getPackageInfo( activity.getPackageName(), 0); } catch (NameNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } return packageInfo.versionName; }
/** * APP版本(整型) * * @Description: * @param @param activity * @param @return * @return int */ public static int getAppVersionInt(Activity activity) { PackageManager packageManager = activity.getPackageManager(); PackageInfo packageInfo = null; try { packageInfo = packageManager.getPackageInfo( activity.getPackageName(), 0); } catch (NameNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } return packageInfo.versionCode; }
获取外网IP(ip168不稳定。也能够用其他能正常获取到IP的url。原理几乎相同):
/** * 获取外网IP * * @Description: * @param @return * @return String */ public static String GetNetIp() { URL infoUrl = null; InputStream inStream = null; String ipLine = ""; HttpURLConnection httpConnection = null; try { infoUrl = new URL("http://ip168.com/"); URLConnection connection = infoUrl.openConnection(); httpConnection = (HttpURLConnection) connection; int responseCode = httpConnection.getResponseCode(); if (responseCode == HttpURLConnection.HTTP_OK) { inStream = httpConnection.getInputStream(); BufferedReader reader = new BufferedReader( new InputStreamReader(inStream, "utf-8")); StringBuilder strber = new StringBuilder(); String line = null; while ((line = reader.readLine()) != null) strber.append(line + "\n"); Pattern pattern = Pattern .compile("((?:(?:25[0-5]|2[0-4]\\d|((1\\d{2})|([1-9]?\\d)))\\.){3}(?:25[0-5]|2[0-4]\\d|((1\\d{2})|([1-9]?\\d))))"); Matcher matcher = pattern.matcher(strber.toString()); if (matcher.find()) { ipLine = matcher.group(); } } } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } finally { try { if (inStream != null) { inStream.close(); } if (httpConnection != null) { httpConnection.disconnect(); } } catch (IOException e) { e.printStackTrace(); } } return ipLine; }
/** * 获取局网IP * * @Description: * @param @return * @return String */ public static String getLocalIpAddress() { try { Enumeration<NetworkInterface> en = NetworkInterface .getNetworkInterfaces(); while (en.hasMoreElements()) { NetworkInterface ni = en.nextElement(); Enumeration<InetAddress> enIp = ni.getInetAddresses(); while (enIp.hasMoreElements()) { InetAddress inet = enIp.nextElement(); if (!inet.isLoopbackAddress() && (inet instanceof Inet4Address)) { return inet.getHostAddress().toString(); } } } } catch (SocketException e) { // TODO Auto-generated catch block e.printStackTrace(); } return "0"; }
Demo下载:https://github.com/xie2000/SystemInfoDemo
关于手机系统信息的总结
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。