我需要找到安卓设备型号的品牌名称(如"三星Galaxy S III")。
不幸的是,android.os.Build.MODEL
返回了模型名称,例如GT-I9300。没有办法获得人类可读的品牌名称,所以为了显示人类可读的名称,例如"Galaxy S III",我显然需要手动映射世界上所有的Android设备型号。
我在哪里可以找到带有映射的设备的完整列表,或者这个映射问题的更好解决方案?
这些信息广泛可用,您可以从谷歌获得,作为他们答案"支持设备的完整列表"的一部分:https://support.google.com/googleplay/answer/1727131->https://storage.googleapis.com/support-kms-prod/21707874A6E6F72ECEE9DCF33F867D25035B
此处镜像的链接PDF:https://www.scribd.com/doc/248834602/List-of-Supported-Android-Devices
谷歌发布了一个CSV文件,其中包含谷歌识别的所有手机的列表。
所以我用这个CSV文件创建了一个库,可以很容易地获得设备的名称
以下是它的工作原理图书馆https://github.com/aishik212/AndroidPhoneNamesFinder
您可以通过以下方法获取设备名称
将此添加到渐变
implementation 'com.github.aishik212:AndroidPhoneNamesFinder:v1.0.2'
然后使用以下
DeviceNameFinder.getPhoneValues(this, object : DeviceDetailsListener {
override fun details(doQuery: DeviceDetailsModel?)
{
super.details(doQuery)
Log.d(TAG, "details: "+doQuery?.calculatedName)
}
})
在这里,要获得最期望的计算名称,请使用calculatedName变量。