-
前言
國內各大手機廠商贮竟,搭著Android開源免費的快車丽焊,都想分一杯羹较剃,不僅如此,還要自己定制系統(tǒng)技健,對開發(fā)狗來說写穴,可是痛苦無比,經常碰到各種坑雌贱,所以還是打算記錄下來啊送,畢竟腦子不夠用啊0.0
-
識別某種系統(tǒng)
以小米為例,小米開發(fā)者網站給出了識別方法
"http://dev.xiaomi.com/doc/?p=254"
- 如何檢測小米設備:
請使用android.os.Build對象欣孤,查詢MANUFACTURER和MODEL的值馋没,MANUFACTURER值為Xiaomi即為小米設備
代碼:
public static boolean orMIUI() {
String manufacturer = Build.MANUFACTURER;
if ("xiaomi".equalsIgnoreCase(manufacturer)) {
return true;
}
return false;
}```
同理其他系統(tǒng)也可以嘗試,但并不絕對:
public static boolean orHTC() {
String manufacturer = Build.MANUFACTURER;
if ("htc".equalsIgnoreCase(manufacturer)) {
return true;
}
return false;
}```
- 如何檢測MIUI V5:
查詢property: ro.miui.ui.version.name 降传,值是”V5″ 就是MIUI V5系統(tǒng)篷朵;值是”V6″就是MIUI 6系統(tǒng)。
代碼:
public static String getSystemProperty(String propName) {
String line;
BufferedReader input = null;
try {
Process p = Runtime.getRuntime().exec("getprop " + propName);
input = new BufferedReader(new InputStreamReader(p.getInputStream()), 1024);
line = input.readLine();
input.close();
} catch (IOException ex) {
return null;
} finally {
if (input != null) {
try {
input.close();
} catch (IOException e) {
}
}
}
return line;
}
public static boolean isMIUI(){
String property = PackageUtils.getSystemProperty("ro.miui.ui.version.name");
return !TextUtils.isEmpty(property);
}