一种处理产品生产数据的方法及装置转让专利

申请号 : CN201610701737.5

文献号 : CN106326037B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 王永清

申请人 : 青岛海信移动通信技术股份有限公司

摘要 :

本发明涉及移动通信技术领域,尤其涉及一种处理产品生产数据的方法和装置,用以解决移动终端修改工具造成的产品生产数据读取失败的问题。本发明提供的处理产品生产数据方法包括:在移动终端的上层应用读取第一份产品生产数据中的产品生产数据信息失败后,移动终端的设备驱动读取第二份产品生产数据中的产品生产数据信息,并将第一份产品生产数据替换为第二份产品生产数据。采用本发明实施例提供的处理产品生产数据的方法和装置,能有效避免移动终端修改工具造成的产品生产数据的读取失败。

权利要求 :

1.一种处理产品生产数据的方法,其特征在于,包括:

移动终端的上层应用读取第一份产品生产数据;

若读取失败,移动终端的设备驱动无需经过上层应用的确认,自动读取第二份产品生产数据中的产品生产数据信息,并将读取到的所述产品生产数据信息返回给上层应用,其中所述移动终端的设备驱动为所述移动终端操作系统内核中的驱动代码,所述第一份产品生产数据和所述第二份产品生产数据分别存储于移动终端的同一个存储器的不同分区或不同存储器中;

对存储第一份产品生产数据的存储器分区或存储器进行格式化,所述第一份产品生产数据和所述第二份产品生产数据是在所述移动终端工厂模式下写入所述移动终端的,且在所述移动终端非工厂模式下,所述第一份产品生产数据和所述第二份产品生产数据具有不可修改性。

2.如权利要求1所述的方法,其特征在于,所述第二份产品生产数据仅由移动终端的设备驱动读写。

3.如权利要求1所述的方法,其特征在于,该方法还包括:

移动终端在工厂模式下,将收到的初始产品生产数据作为第一份产品生产数据,并存储第一份产品生产数据,以及将所述初始产品生产数据作为第二份产品生产数据,并存储第二份产品生产数据。

4.如权利要求1所述的方法,其特征在于,该方法还包括:

移动终端在工厂模式下,将收到的更新的产品生产数据作为第一份产品生产数据替换已存储的第一份产品生产数据,以及将所述更新的产品生产数据作为第二份产品生产数据,替换已存储的第二份产品生产数据。

5.如权利要求4所述的方法,其特征在于,移动终端将收到的所述更新的产品生产数据作为第一份产品生产数据替换已存储的第一份产品生产数据,还包括:若将收到的所述更新的产品生产数据替换已存储的第一份产品生产数据失败,则移动终端的设备驱动读取已存储的第一份产品生产数据中的产品生产数据信息,若读取成功,则重新将收到的所述更新的产品生产数据作为第一份产品生产数据替换已存储的第一份产品生产数据。

6.如权利要求4所述的方法,其特征在于,将收到的所述更新的产品生产数据作为第二份产品生产数据替换已存储的第二份产品生产数据,还包括:若将收到的所述更新的产品生产数据替换已存储的第二份产品生产数据失败,则移动终端的设备驱动读取已存储的第二份产品生产数据中的产品生产数据信息,若读取成功,则重新将收到的所述更新的产品生产数据作为第二份产品生产数据替换已存储的第二份产品生产数据。

7.一种处理产品生产数据的装置,其特征在于,包括:

上层应用,用于读取第一份产品生产数据;

设备驱动,用于若读取失败,移动终端的设备驱动无需经过上层应用的确认,自动读取第二份产品生产数据中的产品生产数据信息,并将读取到的所述产品生产数据信息返回给上层应用,其中所述移动终端的设备驱动为所述移动终端操作系统内核中的驱动代码;

第一存储器,所述第一存储器包括第一分区和第二分区,所述第一分区用于存储第一份产品生产数据,所述第二分区用于存储第二份产品生产数据;或第二存储器和第三存储器,所述第二存储器用于存储第一份产品生产数据,所述第三存储器用于存储第二份产品生产数据,对存储第一份产品生产数据的存储器分区或存储器进行格式化;

所述第一份产品生产数据和所述第二份产品生产数据是在所述移动终端工厂模式下写入所述移动终端的,且在所述移动终端非工厂模式下,所述第一份产品生产数据和所述第二份产品生产数据具有不可修改性。

8.如权利要求7所述的装置,其特征在于,所述第二份产品生产数据仅由设备驱动读写。

9.如权利要求7所述的装置,其特征在于,移动终端在工厂模式下,将收到的初始产品生产数据作为第一份产品生产数据,并存储第一份产品生产数据,以及将所述初始产品生产数据作为第二份产品生产数据,并存储第二份产品生产数据。

10.如权利要求7所述的装置,其特征在于,移动终端在工厂模式下,将收到的更新的产品生产数据作为第一份产品生产数据替换已存储的第一份产品生产数据,以及将所述更新的产品生产数据作为第二份产品生产数据,替换已存储的第二份产品生产数据。

说明书 :

一种处理产品生产数据的方法及装置

[0001] 本申请是2013年3月28日提出的发明名称为“一种处理产品生产数据的方法及装置”的中国发明专利申请201310103347.4的分案申请。

技术领域

[0002] 本发明涉及移动通信技术领域,尤其涉及一种处理产品生产数据的方法及装置。

背景技术

[0003] 移动终端的产品生产数据主要包括:产品的基板号,MSN号,蓝牙、WIFI地址,IMEI号等,产品生产数据存储于移动终端的存储器中。在移动终端的使用过程中,不同的使用场景,可能要用到产品生产数据中的一种或多种数据。比如,移动终端的使用者要建立WLAN的连接,则移动终端的上层应用要从存储产品生产数据的存储器中读取WIFI地址,再进一步建立WLAN的连接。如果WIFI地址读取失败,则无法建立WLAN连接。
[0004] 一般,移动终端的产品生产数据具有终端唯一性和出厂后不可修改性,即,移动终端在工厂内时,可以通过特殊的产品生产数据处理工具对产品生产数据进行读写,但在移动终端出厂后,在正常使用过程中,产品生产数据则只能通过移动终端的上层应用读取,无法对其进行修改。
[0005] 但是,目前市面上存在大量移动终端修改工具(比如:root工具),此类工具可以通过移动终端的上层应用将存储产品生产数据的存储空间释放,导致移动终端的正常使用过程中,移动终端的上层应用无法获取产品生产数据。
[0006] 目前,还没有一种针对移动终端的上层应用读取产品生产数据失败的解决方案。

发明内容

[0007] 本发明实施例提供一种处理产品生产数据的方法及装置,用以提供一种针对移动终端的上层应用读取产品生产数据失败的解决方案。
[0008] 本发明实施例提供的一种处理产品生产数据的方法,包括:
[0009] 移动终端的上层应用读取第一份产品生产数据中的产品生产数据信息;
[0010] 在移动终端的上层应用读取第一份产品生产数据中的产品生产数据信息失败后,移动终端的设备驱动读取第二份产品生产数据中的产品生产数据信息,并将第一份产品生产数据替换为第二份产品生产数据。
[0011] 本发明实施例提供的一种处理产品生产数据的装置,包括:
[0012] 上层应用,用于读取第一份产品生产数据中的产品生产数据信息;
[0013] 设备驱动,用于在上层应用读取第一份产品生产数据中的产品生产数据信息失败后,读取第二份产品生产数据中的产品生产数据信息,之后,将第一份产品生产数据替换为第二份产品生产数据。
[0014] 本发明实施例提供一种处理产品生产数据的方法及装置,该方法中,在移动终端的上层应用读取第一份产品生产数据中的产品生产数据信息失败后,移动终端的设备驱动读取第二份产品生产数据中的产品生产数据信息,并将第一份产品生产数据替换为第二份产品生产数据,解决了移动终端修改工具造成的产品生产数据读取失败的问题,保证了移动终端正常使用过程中能成功获取产品生产数据,增强了产品生产数据的安全性。

附图说明

[0015] 图1为本发明实施例提供的处理产品生产数据的方法过程的示意图;
[0016] 图2为本发明实施例的产品生产数据读取过程的流程图;
[0017] 图3是本发明实施例的初始产品生产数据的写入过程的流程图;
[0018] 图4是本发明实施例的产品生产数据的更新过程的流程图;
[0019] 图5为本发明实施例提供的处理产品生产数据的装置的结构示意图;
[0020] 图6A和图6B为本发明实施例提供的处理产品生产数据的装置中存储产品生产数据的存储器的示意图。

具体实施方式

[0021] 本发明实施例提供一种处理产品生产数据的方法和装置,该方法中,在移动终端的上层应用读取第一份产品生产数据中的产品生产数据信息失败后,移动终端的设备驱动读取第二份产品生产数据中的产品生产数据信息,并将第一份产品生产数据替换为第二份产品生产数据,解决了移动终端修改工具造成的产品生产数据读取失败的问题,保证了移动终端正常使用过程中能成功获取产品生产数据。
[0022] 图1为本发明实施例提供的处理产品生产数据的方法过程的示意图,如图1所示,该方法包括以下步骤:
[0023] S101:移动终端的上层应用读取第一份产品生产数据中的产品生产数据信息。
[0024] S102:在S101步骤中移动终端的上层应用读取第一份产品生产数据中的产品生产数据信息失败后,移动终端的设备驱动读取第二份产品生产数据中的产品生产数据信息,并将第一份产品生产数据替换为第二份产品生产数据。
[0025] 在本发明实施例中,考虑到产品生产数据的重要性,产品生产数据有两份,在第一份产品生产数据中的产品生产数据信息读取失败后,可进一步读取第二份产品生产数据中的产品生产数据信息,并用第二份产品生产数据替换第一份产品生产数据,以实现产品生产数据的恢复。
[0026] 在移动终端出厂前,以及在工厂内更新产品生产数据的过程中,将要写入或更新的产品生产数据先后写为第一份产品生产数据和第二份产品生产数据,以实现备份,此时,两份产品生产数据是相同的。但由于对产品生产数据的多次读取、存储产品生产数据的存储器的硬件损坏、修改工具的删除等因素,可能导致第一份产品生产数据无法读取,或虽能读取,但读取出的数据被校验出错,则第一份产品生产数据已不可用,此时,由移动终端的设备驱动隐形地自动读取第二份产品生产数据中的产品生产数据信息,并将第一份产品生产数据替换为读取的第二份产品生产数据,以恢复产品生产数据。这里的“隐形”是指对于移动终端的使用者不可见,“自动”是指设备驱动在获知第一份产品生产数据中的产品生产数据信息读取失败后,无需经过上层应用的确认,自动地读取第二份产品生产数据中的产品生产数据信息,并将读取到的产品生产数据信息返回给上层应用。其中,移动终端的设备驱动可为移动终端操作系统内核中的驱动代码。由于上述过程对移动终端的使用者是未知的,因此提升了用户感知。
[0027] 进一步地,第二份产品生产数据仅由移动终端的设备驱动读取。
[0028] 第一份产品生产数据对上层应用有读写接口,对上层应用是可见的;在工厂中,可用特定的设备通过移动终端的上层应用写第一份产品生产数据,而在出厂后,在正常使用移动终端的过程中,上层应用仅能读取第一份产品生产数据中的产品生产数据信息,无法改写、删除产品生产数据。第二份产品生产数据对外界是完全隐藏的,唯一能对其操作的就是设备驱动。可选地,设备驱动为移动终端操作系统内核中的驱动代码。
[0029] 进一步地,第一份产品生产数据和第二份产品生产数据分别存储于移动终端的同一个存储器的不同分区或不同存储器中。
[0030] 这样做,可以有效避免由于一个分区损坏而导致两份产品生产数据都无法读取的情况,可靠性高。实际实现时,一份产品生产数据可占用32K、64K等大小的存储空间,具体大小视产品生产数据的数据量而定。
[0031] 进一步地,本发明实施例提供的处理产品生产数据的方法还包括:移动终端将收到的初始产品生产数据作为第一份产品生产数据,并存储第一份产品生产数据,以及将该收到的初始产品生产数据作为第二份产品生产数据,并存储第二份产品生产数据。
[0032] 在移动终端的生产过程中,移动终端将收到的初始产品生产数据首先作为第一份产品生产数据进行存储,然后再由设备驱动隐形地作为第二份产品生产数据进行存储。两个存储过程中的任何一个出错,则会重新进入生产过程。直至重复进入产生过程的次数达到预设的次数阈值(比如:2次)。
[0033] 进一步地,本发明实施例提供的处理产品生产数据的方法还包括:
[0034] 移动终端将收到的更新的产品生产数据作为第一份产品生产数据替换已存储的第一份产品生产数据,以及将更新的产品生产数据作为第二份产品生产数据,替换已存储的第二份产品生产数据。
[0035] 根据工艺需要,在特殊的情况下(比如:产品反包),需要在工厂中更新产品生产数据。该过程中,分别对两份产品生产数据进行更新,保证两份产品生产数据是相同的。
[0036] 进一步地,若将更新的产品生产数据替换已存储的第一份产品生产数据失败,则移动终端的设备驱动读取已存储的第一份产品生产数据中的产品生产数据信息,若读取成功,则重新将收到的更新的产品生产数据作为第一份产品生产数据替换已存储的第一份产品生产数据;
[0037] 若将更新的产品生产数据替换已存储的第二份产品生产数据失败,则移动终端的设备驱动读取已存储的第二份产品生产数据中的产品生产数据信息,若读取成功,则重新将收到的更新的产品生产数据作为第二份产品生产数据替换已存储的第二份产品生产数据。
[0038] 在更新产品生产数据时,可能由于操作、硬件设备读写等诸多原因,导致一次更新失败,这里,无论第一份产品生产数据和第二份产品生产数据任意一个更新失败,则认为产品生产数据更新失败。此时,可选择退出更新过程,也可尝试读取已存储的产品生产数据,若读取成功,则证明存储该产品生产数据的硬件没有损坏,可尝试再次更新产品生产数据。实际实现时,可预设重复更新次数的阈值(比如:2次),当重复更新次数达到该预设的阈值时,则退出更新过程。
[0039] 设备驱动在对产品生产数据进行读取时,使用函数bdget_disk()来获取存储产品生产数据的存储器或存储器分区的设备句柄(作为后面函数调用的参数),并通过函数族bread()和brelse()来读取产品生产数据。设备驱动可通过函数族getblk(),mark_buffer_dirty(), ll_rw_block(), brelse()实现两份产品生产数据的相互替换。这样就保证了两份产品生产数据的同步。比如,当两份产品生产数据分别存储于同一存储器的分区BCK1和BCK2时,通过上述函数族,可将BCK1的数据写入BCK2。以上函数仅为示例,不应视为对本发明实施例的限制。
[0040] 下面,分别参考图2、图3和图4说明本发明实施例的产品生产数据读取、初始产品生产数据的写入以及产品生产数据的更新过程。
[0041] 首先,参考图2说明本发明实施例的产品生产数据读取的过程。
[0042] S201:移动终端的上层应用读取第一份产品生产数据中的产品生产数据信息,若成功,则执行步骤S202;若失败,则执行步骤S203;
[0043] S202:返回读取的产品生产数据信息给上层应用;
[0044] S203:移动终端的设备驱动自动读取第二份产品生产数据中的产品生产数据信息,若失败,则执行步骤S204;若成功,则执行步骤S205,可选地,可在执行步骤S205之前先执行步骤S205’;
[0045] S204:确认存储产品生产数据的存储器或存储器分区已损坏,无法修复,退出产品生产数据的读取流程;
[0046] S205:用第二份产品生产数据替换第一份产品生产数据并返回步骤S202;
[0047] S205’:对存储第一份产品生产数据的存储器分区或存储器进行格式化,该步骤的目的是为了去除存储器分区的可能存在的坏块,提高替换时的存储成功率。
[0048] 下面,参考图3说明本发明实施例的初始产品生产数据的写入过程。
[0049] S301:进入工厂生产模式;
[0050] S302:将收到的初始产品生产数据作为第一份产品生产数据,并存储第一份产品生产数据,若存储成功,则执行步骤S303,若存储失败,则返回步骤S301;
[0051] S303:将收到的初始产品生产数据作为第二份产品生产数据,并存储第二份产品生产数据,若存储成功,则执行步骤S304,若存储失败,则返回步骤S301;
[0052] S304:进入生产的其他阶段。
[0053] 初始产品生产数据是在移动终端出厂前用特定的设备写入的。一般,移动终端要先进入工厂生产模式才能写入产品生产数据。在成功写入产品生产数据后,再进入工厂生产的其他阶段,比如:外壳包装、整机性能测试等。
[0054] 从上述步骤可以看出,第一份产品生产数据或第二份产品生产数据中的任意一份存储失败,都会重新进入工厂生产模式,实际实现时,可限定重新进入工厂生产模式的次数(比如:2次),以避免死循环。
[0055] 最后,参考图4说明本发明实施例的产品生产数据的更新过程。
[0056] 根据工艺需要,在特殊的情况下(比如:产品反包),需要在工厂内更新产品生产数据。该过程中,分别对两份产品生产数据进行更新,以保证两份产品生产数据是相同的。该过程通过如下步骤实现:
[0057] S401:移动终端将收到的更新的产品生产数据作为第一份产品生产数据替换已存储的第一份产品生产数据;若替换成功,则执行步骤S402,若替换失败,则执行步骤S403;
[0058] S402:移动终端将收到的更新的产品生产数据作为第二份产品生产数据,替换已存储的第二份产品生产数据,若成功,则执行步骤S405,若失败,则执行步骤S406;
[0059] S403:移动终端的设备驱动读取已存储的第一份产品生产数据中的产品生产数据信息,若读取成功,则返回步骤S401,若失败,则执行步骤S404;
[0060] S404:确认存储产品生产数据的存储器或存储器分区已损坏,无法修复,退出产品生产数据的更新过程;
[0061] S405:进入工厂更新的其他步骤;
[0062] S406:移动终端的设备驱动读取已存储的第二份产品生产数据中的产品生产数据信息,若读取成功,则返回步骤S402,若失败,则执行步骤S404。
[0063] 实际实现时,可限定重新更新的次数(比如:2次),以避免死循环。可选地,在执行步骤S402步骤时,若失败,也可直接执行步骤S404,即确认产品生产数据的存储器或存储器分区已损坏,退出产品生产数据的更新流程,不再进行更新。
[0064] 基于同一发明构思,本发明实施例中还提供了一种移动终端处理产品生产数据的装置,由于该移动终端的实现原理本发明实施例的处理产品生产数据的方法相似,因此该移动终端的实施可以参见方法的实施,重复之处不再赘述。
[0065] 图5为本发明实施例提供的处理产品生产数据的装置的结构示意图。该装置具体包括:
[0066] 上层应用501,用于读取第一份产品生产数据中的产品生产数据信息;
[0067] 设备驱动502,用于在上层应用501读取第一份产品生产数据中的产品生产数据信息失败后,读取第二份产品生产数据中的产品生产数据信息,之后,将第一份产品生产数据替换为第二份产品生产数据。
[0068] 进一步地,本发明实施例提供的处理产品生产数据的装置中,第二份产品生产数据仅由设备驱动读写。
[0069] 进一步地,如图6A所示,本发明实施例提供的处理产品生产数据的装置还包括:第一存储器601,其中,第一存储器601包括分区BCK1和分区BCK2,分区BCK1用于存储第一份产品生产数据,分区BCK2用于存储第二份产品生产数据。
[0070] 或者,如图6B所示,本发明实施例提供的处理产品生产数据的装置还包括:第二存储器602和第三存储器603,其中,第二存储器602用于存储第一份产品生产数据,第三存储器603用于存储第二份产品生产数据。
[0071] 本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0072] 本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0073] 这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0074] 这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0075] 尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
[0076] 显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。