获取内核架构Android
如何使用android studio获取android内核版本和内核架构的信息? 对于内核版本,我可以使用:获取内核架构Android,android,android-studio,Android,Android Studio,如何使用android studio获取android内核版本和内核架构的信息? 对于内核版本,我可以使用: System.getProperty("os.version") 但是如何使用内核架构呢?试试这个 private String getFormattedKernelVersion() { String procVersionStr; try { procVersionStr = readLine(FILENAME_PROC_VERSION);
System.getProperty("os.version")
但是如何使用内核架构呢?试试这个
private String getFormattedKernelVersion() {
String procVersionStr;
try {
procVersionStr = readLine(FILENAME_PROC_VERSION);
final String PROC_VERSION_REGEX =
"\\w+\\s+" + /* ignore: Linux */
"\\w+\\s+" + /* ignore: version */
"([^\\s]+)\\s+" + /* group 1: 2.6.22-omap1 */
"\\(([^\\s@]+(?:@[^\\s.]+)?)[^)]*\\)\\s+" + /* group 2: (xxxxxx@xxxxx.constant) */
"\\((?:[^(]*\\([^)]*\\))?[^)]*\\)\\s+" + /* ignore: (gcc ..) */
"([^\\s]+)\\s+" + /* group 3: #26 */
"(?:PREEMPT\\s+)?" + /* ignore: PREEMPT (optional) */
"(.+)"; /* group 4: date */
Pattern p = Pattern.compile(PROC_VERSION_REGEX);
Matcher m = p.matcher(procVersionStr);
if (!m.matches()) {
Log.e(LOG_TAG, "Regex did not match on /proc/version: " + procVersionStr);
return "Unavailable";
} else if (m.groupCount() < 4) {
Log.e(LOG_TAG, "Regex match on /proc/version only returned " + m.groupCount()
+ " groups");
return "Unavailable";
} else {
return (new StringBuilder(m.group(1)).append("\n").append(
m.group(2)).append(" ").append(m.group(3)).append("\n")
.append(m.group(4))).toString();
}
} catch (IOException e) {
Log.e(LOG_TAG,
"IO Exception when getting kernel version for Device Info screen",
e);
return "Unavailable";
}
}
私有字符串getFormattedKernelVersion(){
字符串proversionstr;
试一试{
procVersionStr=readLine(文件名\u PROC\u版本);
最终字符串过程版本正则表达式=
“\\w+\\s+”+/*忽略:Linux*/
“\\w+\\s+”+/*忽略:版本*/
“([^\\s]+)\\s+”+/*第1组:2.6.22-omap1*/
“\\([^\\s@]+(?:@[^\\s.]+)?)[^]*\\)\\s++/*第2组:(xxxxxx@xxxxx.constant) */
“\\((?:[^(]*\([^)]*\)?[^)]*\)\\s+”+/*忽略:(gcc..)*/
“([^\\s]+)\\s+”+/*第3组:#26*/
“(?:抢占\\s+”+/*忽略:抢占(可选)*/
“(.+)”;/*第4组:日期*/
Pattern p=Pattern.compile(PROC_VERSION_REGEX);
匹配器m=p.Matcher(procVersionStr);
如果(!m.matches()){
Log.e(Log_标签,“Regex在/proc/version:+procVersionStr上不匹配);
返回“不可用”;
}else if(m.groupCount()<4){
Log.e(Log_标记,“Regex match on/proc/version只返回”+m.groupCount()
+“集团”);
返回“不可用”;
}否则{
返回(新StringBuilder(m.group(1)).append(“\n”).append(
m、 组(2)).append(“”)。append(m.group(3)).append(“\n”)
.append(m.group(4)).toString();
}
}捕获(IOE异常){
Log.e(Log_标签,
“获取设备信息屏幕的内核版本时出现IO异常”,
e) );
返回“不可用”;
}
}