Android 依据Build相关信息判断机型

Android 依据Build相关信息判断机型

本文主要通过Build的相关信息获取机型,目前机型判断的较少,后续继续维护更新

java 复制代码
public static String parseBuild() {
    StringBuilder sb = new StringBuilder();
    String deriveFingerprint = Build.FINGERPRINT;
    String manufacturer = Build.MANUFACTURER;
    if (!TextUtils.isEmpty(deriveFingerprint)
            && !TextUtils.equals(deriveFingerprint, Build.UNKNOWN)) {
        sb.append(deriveFingerprint.toLowerCase(Locale.US));
    }
    if (!TextUtils.isEmpty(manufacturer)
            && !TextUtils.equals(manufacturer, Build.UNKNOWN)) {
        sb.append(",");
        sb.append(manufacturer.toLowerCase(Locale.US));
    }
    return sb.toString();
}

public static String getRom(){
    String s = parseBuild();
    if (TextUtils.isEmpty(s)){
        return "";
    }
    if (s.contains("xiaomi"))  return "xiaomi";
    if (s.contains("samsung"))  return "samsung";
    if (s.contains("vivo"))  return "vivo";
    if (s.contains("oppo"))  return "oppo";
    if (s.contains("realme"))  return "realme";
    if (s.contains("meizu")) return "meizu";
    if (s.contains("huawei") || s.contains("honor") ) {
        if (s.contains("honor")) {
            return "honor";
        }
        return "huawei";
    }
    if (s.contains("oneplus")) return "oneplus";
    if (s.contains("lenovo")) return "lenovo";
    return "";
}
相关推荐
CodeCraft Studio几秒前
国产化Word处理控件Spire.Doc教程:使用C# 编程方式批量转换Word为RTF
开发语言·c#·word·spire.doc·word文档转换·word开发组件·word api库
QING6181 分钟前
Kotlin协程:Job.cancel() 和 Scope.cancel() 的区别详解!!!
android·kotlin·android jetpack
CSDN_RTKLIB3 分钟前
【类定义系列一】C++ 头文件 / 源文件分离
开发语言·c++
invicinble4 分钟前
arthas
开发语言·python
Zender Han5 分钟前
Flutter 图片裁剪插件 image_cropper 最新版介绍与使用教程
android·flutter·ios
lzjava202420 分钟前
Python中的模块和包
linux·开发语言·python
卜锦元21 分钟前
Golang后端性能优化手册(第二章:缓存策略与优化)
开发语言·数据库·后端·性能优化·golang
挖矿大亨25 分钟前
c++中值传递时是如何触发拷贝构造函数的
开发语言·c++
郝亚军27 分钟前
顺序栈C语言版本
c语言·开发语言·算法
成为大佬先秃头28 分钟前
渐进式JavaScript框架:Vue
开发语言·javascript·vue.js