android-Build.MANUFACTURER 在 htc 设备上返回什么

标签 android build

显然我知道它会返回 htc 但它是大写还是小写?我最近有一个应用程序的用户告诉我其中一个功能使他的手机崩溃,所以我想根据我从 Build.MANUFACTURER 和 Build.VERSION.SDK_INT 获得的信息暂时从 htc 设备中排除该功能。我只是不知道 HTC 设备或其他设备上的 Build.MANUFACTURER 会返回什么。有谁知道某处有包含所有此类信息的列表?

最佳答案

请参阅this制造商列表的链接。

以下是我检测设备是否由 HTC 制造的方法。请注意,我不关心它是否与 HTC 或 htc 完全匹配,我 toLower() 它并检查 Build.MANUFACTURER 是否完全包含 htc。

    public boolean isAnHTCDevice()
    {
        String manufacturer = android.os.Build.MANUFACTURER;
        if (manufacturer.toLowerCase().contains("htc"))
            return true;
        else
            return false;
    }

编辑(差不多两年后)- 修改代码并添加 TVK 的建议:

     public boolean isAnHTCDevice()
     {
        String manufacturer = android.os.Build.MANUFACTURER;
        return manufacturer.toLowerCase(Locale.ENGLISH).contains("htc");
     }

缩短返回语句,按照 Lint 的建议将 Local.ENGLISH 添加到 .toLowerCase。

关于android-Build.MANUFACTURER 在 htc 设备上返回什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8275636/

相关文章:

android - 当另一个 Activity 启动时,Phonegap 应用程序将关闭。为什么?

android - Kotlin 中带有扩展的泛型

android - RecyclerView 的 GridLayout View android 上的背景图片

android - Android Facebook 登录中的 key 哈希不匹配

java - 解决 "introduces to cycle in the graph"maven 异常

Java应用程序构建

java - createNewFile - 打开失败 : ENOENT (No such file or directory)

c - Bazel:使用宏从列表生成构建规则

c++ - Libtool 版本不匹配

.net - 无法在 Visual Studio Express VB.net 中构建