Android 获取ROM版本号

今天产品提到了这个问题,有了一个想法,只是实际实现可能成本太高。

首先,通过adb shell getprop命令,可以获取当前手机的所有属性,由于ROM由不同的厂商自己定制的,所有不同厂商对ROM版本号的字段定义也不同,比如锤子手机的ROM版本号放在ro.smartisan.version里,而小米的则放在ro.miui.ui.version.name里,所以我们需要的是不同品牌手机的ROM版本号所对应的字段。

然后通过android.os.Build.BRAND可以获取手机的品牌,我们可以建立一个枚举类,然后对不同的手机,取到品牌之后,进行判断,根据不同的品牌,选择对应的版本号字段propName,然后执行:
Runtime.getRuntime().exec("getprop " + propName);
就可以活得对应的ROM版本号。
这只是一个初步的想法,没有去实现,如果有更好的办法的,忘告知,如果有人去实现了,麻烦把代码做成一个包!

你可能感兴趣的:(Android 获取ROM版本号)