本发明涉及android终端技术领域,具体涉及一种android终端同一个rom兼容多款机型方法。
背景技术:
作为android终端厂商,有时遇到这种情况,由于各种原因,可能有几种机型软硬件完全一样,只是机器型号不同。对于这种情况,传统的开发方法是,程序上修改机器型号,然后重新打包生成一个新的rom,新旧两个机型分别维护各自的rom。但是这样的处理方法不够方便。
技术实现要素:
针对现有技术的不足,本发明旨在提供一种android终端同一个rom兼容多款机型方法。
为了实现上述目的,本发明采用如下技术方案:
一种android终端同一个rom兼容多款机型方法,具体过程如下:
在rom的分区上增加一个机型识别分区,该分区用于保存支持的机型名称和认证信息;
在android系统增加用于读取机型识别分区信息的接口,并对于android系统提供的读取机型名称的标准接口,在其实现上把原有的从/system/build.prop读取的方式改成从机型识别分区里面读取;对通用方法android.os.systemproperties.get,通过对key值的判断,如果是机型名称或者是认证信息,把从/system/build.prop读取的方式改成从机型识别分区里面读取;通过对selinux安全策略的配置,禁止非系统应用直接读取/system/build.prop;
每一个rom带有一个机型配置文件,机型配置文件中列出本rom支持的各种机型名称以及对应的认证信息;
开发刷机工具用于对出厂前的android终端进行刷机,该刷机工具具有通用的刷机功能,还具备如下功能:刷机工具选择rom后,优先读取与该rom带有的机型配置文件,从机型配置文件中读取所有机型名称并显示在刷机工具中,供刷机人员选择要刷的目标机型名称;当勾选机型名称后,刷机工具会把机型名称连同对应的认证信息制作成一个二进制的机型文件;刷机过程中除了刷rom中各个分区文件外,还要把新生成的二进制机型文件刷到机型识别分区。
进一步地,需要rom增加支持的机型名称和认证信息,在对应的机型配置文件中添加即可。
进一步地,对于出厂之后的android终端,发布在市场上的刷机工具屏蔽对机型配置文件的读取,利用该刷机工具对出厂后的android终端刷机时不会重写机型识别分区。
本发明的有益效果在于:利用本发明,可以实现一个rom兼容软硬件一样的多个机型,降低rom的开发和维护成本。
具体实施方式
以下将对本发明作进一步的描述,需要说明的是,本实施例以本技术方案为前提,给出了详细的实施方式和具体的操作过程,但本发明的保护范围并不限于本实施例。
本实施例提供一种android终端同一个rom兼容多款机型方法,具体过程如下:
在rom的分区上增加一个机型识别分区,该分区用于保存支持的机型名称和认证型号等少量文本信息;
在android系统增加用于读取机型识别分区信息的接口,并对于android系统提供的读取机型名称的标准接口,在其实现上把原有的从/system/build.prop读取的方式改成从机型识别分区里面读取;对通用方法android.os.systemproperties.get(stringkey),通过对key值的判断,如果是机型名称或者是认证信息,把从/system/build.prop读取的方式改成从机型识别分区里面读取;通过对selinux安全策略的配置,禁止非系统应用直接读取/system/build.prop,防止第三方应用采用非正常的方式读取机型名称等信息。
每一个rom带有一个机型配置文件,机型配置文件中列出本rom支持的各种机型名称以及对应的认证信息。如果后面需要增加支持的机型名称和认证信息,在机型配置文件中添加即可。
开发刷机工具用于对出厂前的android终端进行刷机,该刷机工具除了具有通用的刷机功能外,还需要具备如下功能:刷机工具选择rom后,优先读取与该rom带有的机型配置文件,从机型配置文件中读取所有机型名称并显示在刷机工具中,供刷机人员选择要刷的目标机型名称;当勾选机型名称后,刷机工具会把机型名称连同对应的认证信息制作成一个二进制的机型文件;刷机过程中除了刷rom中各个分区文件外,还要把新生成的二进制机型文件刷到机型识别分区。
进一步地,对于出厂之后的android终端,发布在市场上的刷机工具屏蔽对机型配置文件的读取,利用该刷机工具对出厂后的android终端刷机时不会重写机型识别分区,避免了误选误刷。
需要说明的是,对于出厂前的android终端,刷机开机后,机器显示成目的机型。需要说明一下的是,经过上述方法的实施后,/system/build.prop中的机型名称和认证信息等一直都是错误的,但是这些错误信息永远不会被读取到。
对于本领域的技术人员来说,可以根据以上的技术方案和构思,给出各种相应的改变和变形,而所有的这些改变和变形,都应该包括在本发明权利要求的保护范围之内。
1.一种android终端同一个rom兼容多款机型方法,其特征在于,具体过程如下:
在rom的分区上增加一个机型识别分区,该分区用于保存支持的机型名称和认证信息;
在android系统增加用于读取机型识别分区信息的接口,并对于android系统提供的读取机型名称的标准接口,在其实现上把原有的从/system/build.prop读取的方式改成从机型识别分区里面读取;对通用方法android.os.systemproperties.get,通过对key值的判断,如果是机型名称或者是认证信息,把从/system/build.prop读取的方式改成从机型识别分区里面读取;通过对selinux安全策略的配置,禁止非系统应用直接读取/system/build.prop;
每一个rom带有一个机型配置文件,机型配置文件中列出本rom支持的各种机型名称以及对应的认证信息;
开发刷机工具用于对出厂前的android终端进行刷机,该刷机工具具有通用的刷机功能,还具备如下功能:刷机工具选择rom后,优先读取与该rom带有的机型配置文件,从机型配置文件中读取所有机型名称并显示在刷机工具中,供刷机人员选择要刷的目标机型名称;当勾选机型名称后,刷机工具会把机型名称连同对应的认证信息制作成一个二进制的机型文件;刷机过程中除了刷rom中各个分区文件外,还要把新生成的二进制机型文件刷到机型识别分区。
2.根据权利要求1所述的方法,其特征在于,需要rom增加支持的机型名称和认证信息,在对应的机型配置文件中添加即可。
3.根据权利要求1所述的方法,其特征在于,对于出厂之后的android终端,发布在市场上的刷机工具屏蔽对机型配置文件的读取,利用该刷机工具对出厂后的android终端刷机时不会重写机型识别分区。