Topwo博客
首页
博客
项目
您现在的位置是:
Topwo博客
>>
Android
文章
获取安卓系统信息
发布时间:2023-04-12
作者:Topwo
来源:原创
点击:173
### 参考文章 [获取Android手机设备信息(设备名、厂商等)](https://www.jianshu.com/p/c318f4bb1ba6) ### 源码 ```java import android.os.Build; import android.os.Environment; import android.util.Log; import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.lang.reflect.Method; import java.util.Collection; import java.util.Enumeration; import java.util.Map.Entry; import java.util.Properties; import java.util.Set; /** * 判断系统是不是miui,flyme,emui */ public class OSUtil { private static final String TAG = OSUtil.class.getSimpleName(); 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 { Log.d(TAG, "Build.BRAND=" + Build.BRAND + "\nBuild.MANUFACTURER=" + Build.MANUFACTURER + "\nBuild.MODEL=" + Build.MODEL + "\nBuild.PRODUCT=" + Build.PRODUCT + "\nBuild.BOARD=" + Build.BOARD + "\nBuild.DEVICE=" + Build.DEVICE + "\nBuild.VERSION.RELEASE=" + Build.VERSION.RELEASE + "\nBuild.VERSION.SDK=" + Build.VERSION.SDK + "\nBuild.VERSION.SDK_INT=" + Build.VERSION.SDK_INT); 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; } } //读取系统配置信息build.prop类 public static class BuildProperties { private final Properties properties; private BuildProperties() throws IOException { properties = new Properties(); properties.load(new FileInputStream(new File(Environment.getRootDirectory(), "build.prop"))); for (Entry<Object, Object> aa:properties.entrySet()) { Log.d(TAG, "" + aa.getKey() + aa.getValue()); } } 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(); } } } ```
上一篇:
OpenWrt ping不通外网
下一篇:
android 安全退出应用程序的几种方法