Is the Android system MIUI, Flyme, and EMUI?
// Read system configuration information build. prop class 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
> 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
Keys () {return properties. keys ();} public SetKeySet () {return properties. keySet ();} public int size () {return properties. size ();} public CollectionValues () {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;/*** determine whether the system is 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;} r Eturn 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 = Build. class. getMethod (hasSmartBar); return method! = Null;} catch (final Exception e) {return false ;}}}