關於手機系統資訊的總結,手機系統資訊
擷取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:
/** * 擷取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;}
APP版本號碼(字串):
/** * @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 blocke.printStackTrace();}return packageInfo.versionName;}
APP版本號碼(整型):
/** * 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 blocke.printStackTrace();}return packageInfo.versionCode;}
擷取外網IP(ip168不穩定,可以其它可以擷取到IP的網址,原理差不多):
/** * 擷取外網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:
/** * 擷取局網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 blocke.printStackTrace();}return "0";}