当前位置: 代码迷 >> Android >> Android 系统是否MIUI、Flyme、EMUI
  详细解决方案

Android 系统是否MIUI、Flyme、EMUI

热度:105   发布时间:2016-04-27 22:35:53.0
Android 系统是不是MIUI、Flyme、EMUI
//读取系统配置信息build.prop类import android.os.Environment;import java.io.File;import java.io.FileInputStream;import java.io.IOException;import java.util.Collection;import java.util.Enumeration;import java.util.Map.Entry;import java.util.Properties;import java.util.Set;public class BuildProperties {    private final Properties properties;    private BuildProperties() throws IOException {        properties = new Properties();        properties.load(new FileInputStream(new File(Environment.getRootDirectory(), "build.prop")));    }    public boolean containsKey(final Object key) {        return properties.containsKey(key);    }    public boolean containsValue(final Object value) {        return properties.containsValue(value);    }    public Set<Entry<Object, Object>> entrySet() {        return properties.entrySet();    }    public String getProperty(final String name) {        return properties.getProperty(name);    }    public String getProperty(final String name, final String defaultValue) {        return properties.getProperty(name, defaultValue);    }    public boolean isEmpty() {        return properties.isEmpty();    }    public Enumeration<Object> keys() {        return properties.keys();    }    public Set<Object> keySet() {        return properties.keySet();    }    public int size() {        return properties.size();    }    public Collection<Object> values() {        return properties.values();    }    public static BuildProperties newInstance() throws IOException {        return new BuildProperties();    }}import android.os.Build;import java.io.IOException;import java.lang.reflect.Method;/** * 判断系统是不是miui,flyme,emui */public class OSUtils {    private static final String KEY_EMUI_VERSION_CODE = "ro.build.version.emui";    private static final String KEY_MIUI_VERSION_CODE = "ro.miui.ui.version.code";    private static final String KEY_MIUI_VERSION_NAME = "ro.miui.ui.version.name";    private static final String KEY_MIUI_INTERNAL_STORAGE = "ro.miui.internal.storage";    private static boolean isPropertiesExist(String... keys) {        try {            BuildProperties prop = BuildProperties.newInstance();            for (String key : keys) {                String str = prop.getProperty(key);                if (str == null)                    return false;            }            return true;        } catch (IOException e) {            return false;        }    }    public static boolean isEMUI() {        return isPropertiesExist(KEY_EMUI_VERSION_CODE);    }    public static boolean isMIUI() {        return isPropertiesExist(KEY_MIUI_VERSION_CODE, KEY_MIUI_VERSION_NAME, KEY_MIUI_INTERNAL_STORAGE);    }    public static boolean isFlyme() {        try {            final Method method = Build.class.getMethod("hasSmartBar");            return method != null;        } catch (final Exception e) {            return false;        }    }}

版权声明:本文为sunger原创文章,未经博主允许不得转载。

  相关解决方案