代码获取Android版本等信息
来源:互联网 发布:软件产品设计文档模板 编辑:程序博客网 时间:2024/05/31 00:40
我手机的关于手机界面:
说明:
其中手机型号、Android版本、软件版本通过系统Build类得到,处理器信息、内核版本通过读取系统文件得到,基带版本信息通过反射得到。
源码:
package com.example.shen.phoneinfo;import android.app.Activity;import android.support.v7.app.ActionBarActivity;import android.os.Bundle;import android.util.Log;import android.view.Menu;import android.view.MenuItem;import java.io.BufferedReader;import java.io.FileNotFoundException;import java.io.FileReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.lang.reflect.Method;public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Log.e("phoneInfo", "MODEL:" + android.os.Build.MODEL); Log.e("phoneInfo", "CPUInfo:"+getCPUInfo()); Log.e("phoneInfo", "VERSION_RELEASE:"+android.os.Build.VERSION.RELEASE); Log.e("phoneInfo", "VERSION_SDK:"+android.os.Build.VERSION.SDK_INT + ""); Log.e("phoneInfo", "BaseBandVersion:"+getBaseBandVersion()); Log.e("phoneInfo", "KernelVersion:"+getKernelVersion()); Log.e("phoneInfo", "ID:" + android.os.Build.ID); } /** * 获得处理器信息 * @return String */ public String getCPUInfo() { try { FileReader fileReader = new FileReader("/proc/cpuinfo"); BufferedReader bufferedReader = new BufferedReader(fileReader); String info; while ((info = bufferedReader.readLine()) != null) { String[] array = info.split(":"); if(array[0].trim().equals("Hardware")) { return array[1]; } } } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } return null; } /** *获得基带版本 * @return String */ public String getBaseBandVersion() { String version = ""; try { Class clazz= Class.forName("android.os.SystemProperties"); Object object = clazz.newInstance(); Method method = clazz.getMethod("get", new Class[]{String.class, String.class}); Object result = method.invoke(object, new Object[]{"gsm.version.baseband", "no message"}); version = (String) result; } catch (Exception e) { } return version; } /** * 获得内核版本 * @return String */ public String getKernelVersion() { Process process = null; String kernelVersion = ""; try { process = Runtime.getRuntime().exec("cat /proc/version"); } catch (IOException e) { e.printStackTrace(); } InputStream inputStream = process.getInputStream(); InputStreamReader inputStreamReader = new InputStreamReader(inputStream); BufferedReader bufferedReader = new BufferedReader(inputStreamReader, 8 * 1024); String result = ""; String info; try { while ((info = bufferedReader.readLine()) != null) { result += info; } } catch (IOException e) { e.printStackTrace(); } try { if (result != "") { String keyword = "version "; int index = result.indexOf(keyword); info = result.substring(index + keyword.length()); index = info.indexOf(" "); kernelVersion = info.substring(0, index); } } catch (IndexOutOfBoundsException e) { e.printStackTrace(); } return kernelVersion; }}
/proc/cpuinfo文件截图
/proc/version文件截图
0 0
- 代码获取Android版本等信息
- Android获取手机和系统版本等信息的代码
- Android获取手机和系统版本等信息的代码
- Android获取手机和系统版本等信息的代码
- Android获取手机和系统版本等信息的代码
- Android获取手机和系统版本等信息的代码
- Android获取手机和系统版本等信息的代码
- Android获取手机和系统版本等信息的代码
- Android获取手机和系统版本等信息的代码
- Android获取手机和系统版本等信息的代码
- android 代码获取版本信息
- 33 Android 获取版本等信息
- Android 获取手机厂商、系统版本等信息
- Android获取系统cpu信息,内存,版本,电量等信息
- Android获取系统cpu信息,内存,版本,电量等信息
- Android获取系统cpu信息,内存,版本,电量等信息
- Android获取系统cpu信息,内存,版本,电量等信息
- Android获取apk的版本及包名等信息
- SYN 攻击 常识 预防
- 【发布】iOS百度贴吧助手1.0
- 重写equals/clone
- tcp/ip学习笔记
- 第一周工作总结及计划表
- 代码获取Android版本等信息
- 红黑二叉查找树
- gerrit H2 数据库管理
- 剑指offer刷题之java实现的二叉搜索树的后序遍历序列
- 提取最长转录本的代码
- 一步一步在ubuntu上安装即时通讯服务器-Openfire
- poj 2387 Til the Cows Come Home
- 重复子串问题(五):求最长回文字符子串
- 动态规划专题之zoj1013