判断设备是否 运行 MIUI 软件

Tell if device is running a MIUI software

由于 android 6.0 之前的权限等问题,我需要知道我的应用程序在运行时是否 运行 在小米等 MIUI 设备上

有办法吗?

我在 github 上找到了一个要点,旨在通过尝试获取 "ro.miui.ui.version.name" 系统 属性.

来做到这一点
public static boolean isMiUi() {
    return !TextUtils.isEmpty(getSystemProperty("ro.miui.ui.version.name"));
}

public static String getSystemProperty(String propName) {
    String line;
    BufferedReader input = null;
    try {
        java.lang.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) {
                e.printStackTrace();
            }
        }
    }
    return line;
}

Origin on github