技術(shù)領(lǐng)域
本發(fā)明涉及移動(dòng)通信技術(shù)領(lǐng)域,尤其涉及一種處理產(chǎn)品生產(chǎn)數(shù)據(jù)的方法及裝置。
背景技術(shù):
移動(dòng)終端的產(chǎn)品生產(chǎn)數(shù)據(jù)主要包括:產(chǎn)品的基板號(hào),MSN號(hào),藍(lán)牙、WIFI地址,IMEI號(hào)等,產(chǎn)品生產(chǎn)數(shù)據(jù)存儲(chǔ)于移動(dòng)終端的存儲(chǔ)器中。在移動(dòng)終端的使用過(guò)程中,不同的使用場(chǎng)景,可能要用到產(chǎn)品生產(chǎn)數(shù)據(jù)中的一種或多種數(shù)據(jù)。比如,移動(dòng)終端的使用者要建立WLAN的連接,則移動(dòng)終端的上層應(yīng)用要從存儲(chǔ)產(chǎn)品生產(chǎn)數(shù)據(jù)的存儲(chǔ)器中讀取WIFI地址,再進(jìn)一步建立WLAN的連接。如果WIFI地址讀取失敗,則無(wú)法建立WLAN連接。
一般,移動(dòng)終端的產(chǎn)品生產(chǎn)數(shù)據(jù)具有終端唯一性和出廠后不可修改性,即,移動(dòng)終端在工廠內(nèi)時(shí),可以通過(guò)特殊的產(chǎn)品生產(chǎn)數(shù)據(jù)處理工具對(duì)產(chǎn)品生產(chǎn)數(shù)據(jù)進(jìn)行讀寫,但在移動(dòng)終端出廠后,在正常使用過(guò)程中,產(chǎn)品生產(chǎn)數(shù)據(jù)則只能通過(guò)移動(dòng)終端的上層應(yīng)用讀取,無(wú)法對(duì)其進(jìn)行修改。
但是,目前市面上存在大量移動(dòng)終端修改工具(比如:root工具),此類工具可以通過(guò)移動(dòng)終端的上層應(yīng)用將存儲(chǔ)產(chǎn)品生產(chǎn)數(shù)據(jù)的存儲(chǔ)空間釋放,導(dǎo)致移動(dòng)終端的正常使用過(guò)程中,移動(dòng)終端的上層應(yīng)用無(wú)法獲取產(chǎn)品生產(chǎn)數(shù)據(jù)。
目前,還沒有一種針對(duì)移動(dòng)終端的上層應(yīng)用讀取產(chǎn)品生產(chǎn)數(shù)據(jù)失敗的解決方案。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明實(shí)施例提供一種處理產(chǎn)品生產(chǎn)數(shù)據(jù)的方法及裝置,用以提供一種針對(duì)移動(dòng)終端的上層應(yīng)用讀取產(chǎn)品生產(chǎn)數(shù)據(jù)失敗的解決方案。
本發(fā)明實(shí)施例提供的一種處理產(chǎn)品生產(chǎn)數(shù)據(jù)的方法,包括:
移動(dòng)終端的上層應(yīng)用讀取第一份產(chǎn)品生產(chǎn)數(shù)據(jù)中的產(chǎn)品生產(chǎn)數(shù)據(jù)信息;
在移動(dòng)終端的上層應(yīng)用讀取第一份產(chǎn)品生產(chǎn)數(shù)據(jù)中的產(chǎn)品生產(chǎn)數(shù)據(jù)信息失敗后,移動(dòng)終端的設(shè)備驅(qū)動(dòng)讀取第二份產(chǎn)品生產(chǎn)數(shù)據(jù)中的產(chǎn)品生產(chǎn)數(shù)據(jù)信息,并將第一份產(chǎn)品生產(chǎn)數(shù)據(jù)替換為第二份產(chǎn)品生產(chǎn)數(shù)據(jù)。
本發(fā)明實(shí)施例提供的一種處理產(chǎn)品生產(chǎn)數(shù)據(jù)的裝置,包括:
上層應(yīng)用,用于讀取第一份產(chǎn)品生產(chǎn)數(shù)據(jù)中的產(chǎn)品生產(chǎn)數(shù)據(jù)信息;
設(shè)備驅(qū)動(dòng),用于在上層應(yīng)用讀取第一份產(chǎn)品生產(chǎn)數(shù)據(jù)中的產(chǎn)品生產(chǎn)數(shù)據(jù)信息失敗后,讀取第二份產(chǎn)品生產(chǎn)數(shù)據(jù)中的產(chǎn)品生產(chǎn)數(shù)據(jù)信息,之后,將第一份產(chǎn)品生產(chǎn)數(shù)據(jù)替換為第二份產(chǎn)品生產(chǎn)數(shù)據(jù)。
本發(fā)明實(shí)施例提供一種處理產(chǎn)品生產(chǎn)數(shù)據(jù)的方法及裝置,該方法中,在移動(dòng)終端的上層應(yīng)用讀取第一份產(chǎn)品生產(chǎn)數(shù)據(jù)中的產(chǎn)品生產(chǎn)數(shù)據(jù)信息失敗后,移動(dòng)終端的設(shè)備驅(qū)動(dòng)讀取第二份產(chǎn)品生產(chǎn)數(shù)據(jù)中的產(chǎn)品生產(chǎn)數(shù)據(jù)信息,并將第一份產(chǎn)品生產(chǎn)數(shù)據(jù)替換為第二份產(chǎn)品生產(chǎn)數(shù)據(jù),解決了移動(dòng)終端修改工具造成的產(chǎn)品生產(chǎn)數(shù)據(jù)讀取失敗的問題,保證了移動(dòng)終端正常使用過(guò)程中能成功獲取產(chǎn)品生產(chǎn)數(shù)據(jù),增強(qiáng)了產(chǎn)品生產(chǎn)數(shù)據(jù)的安全性。
附圖說(shuō)明
圖1為本發(fā)明實(shí)施例提供的處理產(chǎn)品生產(chǎn)數(shù)據(jù)的方法過(guò)程的示意圖;
圖2為本發(fā)明實(shí)施例的產(chǎn)品生產(chǎn)數(shù)據(jù)讀取過(guò)程的流程圖;
圖3是本發(fā)明實(shí)施例的初始產(chǎn)品生產(chǎn)數(shù)據(jù)的寫入過(guò)程的流程圖;
圖4是本發(fā)明實(shí)施例的產(chǎn)品生產(chǎn)數(shù)據(jù)的更新過(guò)程的流程圖;
圖5為本發(fā)明實(shí)施例提供的處理產(chǎn)品生產(chǎn)數(shù)據(jù)的裝置的結(jié)構(gòu)示意圖;
圖6A和圖6B為本發(fā)明實(shí)施例提供的處理產(chǎn)品生產(chǎn)數(shù)據(jù)的裝置中存儲(chǔ)產(chǎn)品生產(chǎn)數(shù)據(jù)的存儲(chǔ)器的示意圖。
具體實(shí)施方式
本發(fā)明實(shí)施例提供一種處理產(chǎn)品生產(chǎn)數(shù)據(jù)的方法和裝置,該方法中,在移動(dòng)終端的上層應(yīng)用讀取第一份產(chǎn)品生產(chǎn)數(shù)據(jù)中的產(chǎn)品生產(chǎn)數(shù)據(jù)信息失敗后,移動(dòng)終端的設(shè)備驅(qū)動(dòng)讀取第二份產(chǎn)品生產(chǎn)數(shù)據(jù)中的產(chǎn)品生產(chǎn)數(shù)據(jù)信息,并將第一份產(chǎn)品生產(chǎn)數(shù)據(jù)替換為第二份產(chǎn)品生產(chǎn)數(shù)據(jù),解決了移動(dòng)終端修改工具造成的產(chǎn)品生產(chǎn)數(shù)據(jù)讀取失敗的問題,保證了移動(dòng)終端正常使用過(guò)程中能成功獲取產(chǎn)品生產(chǎn)數(shù)據(jù)。
圖1為本發(fā)明實(shí)施例提供的處理產(chǎn)品生產(chǎn)數(shù)據(jù)的方法過(guò)程的示意圖,如圖1所示,該方法包括以下步驟:
S101:移動(dòng)終端的上層應(yīng)用讀取第一份產(chǎn)品生產(chǎn)數(shù)據(jù)中的產(chǎn)品生產(chǎn)數(shù)據(jù)信息。
S102:在S101步驟中移動(dòng)終端的上層應(yīng)用讀取第一份產(chǎn)品生產(chǎn)數(shù)據(jù)中的產(chǎn)品生產(chǎn)數(shù)據(jù)信息失敗后,移動(dòng)終端的設(shè)備驅(qū)動(dòng)讀取第二份產(chǎn)品生產(chǎn)數(shù)據(jù)中的產(chǎn)品生產(chǎn)數(shù)據(jù)信息,并將第一份產(chǎn)品生產(chǎn)數(shù)據(jù)替換為第二份產(chǎn)品生產(chǎn)數(shù)據(jù)。
在本發(fā)明實(shí)施例中,考慮到產(chǎn)品生產(chǎn)數(shù)據(jù)的重要性,產(chǎn)品生產(chǎn)數(shù)據(jù)有兩份,在第一份產(chǎn)品生產(chǎn)數(shù)據(jù)中的產(chǎn)品生產(chǎn)數(shù)據(jù)信息讀取失敗后,可進(jìn)一步讀取第二份產(chǎn)品生產(chǎn)數(shù)據(jù)中的產(chǎn)品生產(chǎn)數(shù)據(jù)信息,并用第二份產(chǎn)品生產(chǎn)數(shù)據(jù)替換第一份產(chǎn)品生產(chǎn)數(shù)據(jù),以實(shí)現(xiàn)產(chǎn)品生產(chǎn)數(shù)據(jù)的恢復(fù)。
在移動(dòng)終端出廠前,以及在工廠內(nèi)更新產(chǎn)品生產(chǎn)數(shù)據(jù)的過(guò)程中,將要寫入或更新的產(chǎn)品生產(chǎn)數(shù)據(jù)先后寫為第一份產(chǎn)品生產(chǎn)數(shù)據(jù)和第二份產(chǎn)品生產(chǎn)數(shù)據(jù),以實(shí)現(xiàn)備份,此時(shí),兩份產(chǎn)品生產(chǎn)數(shù)據(jù)是相同的。但由于對(duì)產(chǎn)品生產(chǎn)數(shù)據(jù)的多次讀取、存儲(chǔ)產(chǎn)品生產(chǎn)數(shù)據(jù)的存儲(chǔ)器的硬件損壞、修改工具的刪除等因素,可能導(dǎo)致第一份產(chǎn)品生產(chǎn)數(shù)據(jù)無(wú)法讀取,或雖能讀取,但讀取出的數(shù)據(jù)被校驗(yàn)出錯(cuò),則第一份產(chǎn)品生產(chǎn)數(shù)據(jù)已不可用,此時(shí),由移動(dòng)終端的設(shè)備驅(qū)動(dòng)隱形地自動(dòng)讀取第二份產(chǎn)品生產(chǎn)數(shù)據(jù)中的產(chǎn)品生產(chǎn)數(shù)據(jù)信息,并將第一份產(chǎn)品生產(chǎn)數(shù)據(jù)替換為讀取的第二份產(chǎn)品生產(chǎn)數(shù)據(jù),以恢復(fù)產(chǎn)品生產(chǎn)數(shù)據(jù)。這里的“隱形”是指對(duì)于移動(dòng)終端的使用者不可見,“自動(dòng)”是指設(shè)備驅(qū)動(dòng)在獲知第一份產(chǎn)品生產(chǎn)數(shù)據(jù)中的產(chǎn)品生產(chǎn)數(shù)據(jù)信息讀取失敗后,無(wú)需經(jīng)過(guò)上層應(yīng)用的確認(rèn),自動(dòng)地讀取第二份產(chǎn)品生產(chǎn)數(shù)據(jù)中的產(chǎn)品生產(chǎn)數(shù)據(jù)信息,并將讀取到的產(chǎn)品生產(chǎn)數(shù)據(jù)信息返回給上層應(yīng)用。其中,移動(dòng)終端的設(shè)備驅(qū)動(dòng)可為移動(dòng)終端操作系統(tǒng)內(nèi)核中的驅(qū)動(dòng)代碼。由于上述過(guò)程對(duì)移動(dòng)終端的使用者是未知的,因此提升了用戶感知。
進(jìn)一步地,第二份產(chǎn)品生產(chǎn)數(shù)據(jù)僅由移動(dòng)終端的設(shè)備驅(qū)動(dòng)讀取。
第一份產(chǎn)品生產(chǎn)數(shù)據(jù)對(duì)上層應(yīng)用有讀寫接口,對(duì)上層應(yīng)用是可見的;在工廠中,可用特定的設(shè)備通過(guò)移動(dòng)終端的上層應(yīng)用寫第一份產(chǎn)品生產(chǎn)數(shù)據(jù),而在出廠后,在正常使用移動(dòng)終端的過(guò)程中,上層應(yīng)用僅能讀取第一份產(chǎn)品生產(chǎn)數(shù)據(jù)中的產(chǎn)品生產(chǎn)數(shù)據(jù)信息,無(wú)法改寫、刪除產(chǎn)品生產(chǎn)數(shù)據(jù)。第二份產(chǎn)品生產(chǎn)數(shù)據(jù)對(duì)外界是完全隱藏的,唯一能對(duì)其操作的就是設(shè)備驅(qū)動(dòng)??蛇x地,設(shè)備驅(qū)動(dòng)為移動(dòng)終端操作系統(tǒng)內(nèi)核中的驅(qū)動(dòng)代碼。
進(jìn)一步地,第一份產(chǎn)品生產(chǎn)數(shù)據(jù)和第二份產(chǎn)品生產(chǎn)數(shù)據(jù)分別存儲(chǔ)于移動(dòng)終端的同一個(gè)存儲(chǔ)器的不同分區(qū)或不同存儲(chǔ)器中。
這樣做,可以有效避免由于一個(gè)分區(qū)損壞而導(dǎo)致兩份產(chǎn)品生產(chǎn)數(shù)據(jù)都無(wú)法讀取的情況,可靠性高。實(shí)際實(shí)現(xiàn)時(shí),一份產(chǎn)品生產(chǎn)數(shù)據(jù)可占用32K、64K等大小的存儲(chǔ)空間,具體大小視產(chǎn)品生產(chǎn)數(shù)據(jù)的數(shù)據(jù)量而定。
進(jìn)一步地,本發(fā)明實(shí)施例提供的處理產(chǎn)品生產(chǎn)數(shù)據(jù)的方法還包括:移動(dòng)終端將收到的初始產(chǎn)品生產(chǎn)數(shù)據(jù)作為第一份產(chǎn)品生產(chǎn)數(shù)據(jù),并存儲(chǔ)第一份產(chǎn)品生產(chǎn)數(shù)據(jù),以及將該收到的初始產(chǎn)品生產(chǎn)數(shù)據(jù)作為第二份產(chǎn)品生產(chǎn)數(shù)據(jù),并存儲(chǔ)第二份產(chǎn)品生產(chǎn)數(shù)據(jù)。
在移動(dòng)終端的生產(chǎn)過(guò)程中,移動(dòng)終端將收到的初始產(chǎn)品生產(chǎn)數(shù)據(jù)首先作為第一份產(chǎn)品生產(chǎn)數(shù)據(jù)進(jìn)行存儲(chǔ),然后再由設(shè)備驅(qū)動(dòng)隱形地作為第二份產(chǎn)品生產(chǎn)數(shù)據(jù)進(jìn)行存儲(chǔ)。兩個(gè)存儲(chǔ)過(guò)程中的任何一個(gè)出錯(cuò),則會(huì)重新進(jìn)入生產(chǎn)過(guò)程。直至重復(fù)進(jìn)入產(chǎn)生過(guò)程的次數(shù)達(dá)到預(yù)設(shè)的次數(shù)閾值(比如:2次)。
進(jìn)一步地,本發(fā)明實(shí)施例提供的處理產(chǎn)品生產(chǎn)數(shù)據(jù)的方法還包括:
移動(dòng)終端將收到的更新的產(chǎn)品生產(chǎn)數(shù)據(jù)作為第一份產(chǎn)品生產(chǎn)數(shù)據(jù)替換已存儲(chǔ)的第一份產(chǎn)品生產(chǎn)數(shù)據(jù),以及將更新的產(chǎn)品生產(chǎn)數(shù)據(jù)作為第二份產(chǎn)品生產(chǎn)數(shù)據(jù),替換已存儲(chǔ)的第二份產(chǎn)品生產(chǎn)數(shù)據(jù)。
根據(jù)工藝需要,在特殊的情況下(比如:產(chǎn)品反包),需要在工廠中更新產(chǎn)品生產(chǎn)數(shù)據(jù)。該過(guò)程中,分別對(duì)兩份產(chǎn)品生產(chǎn)數(shù)據(jù)進(jìn)行更新,保證兩份產(chǎn)品生產(chǎn)數(shù)據(jù)是相同的。
進(jìn)一步地,若將更新的產(chǎn)品生產(chǎn)數(shù)據(jù)替換已存儲(chǔ)的第一份產(chǎn)品生產(chǎn)數(shù)據(jù)失敗,則移動(dòng)終端的設(shè)備驅(qū)動(dòng)讀取已存儲(chǔ)的第一份產(chǎn)品生產(chǎn)數(shù)據(jù)中的產(chǎn)品生產(chǎn)數(shù)據(jù)信息,若讀取成功,則重新將收到的更新的產(chǎn)品生產(chǎn)數(shù)據(jù)作為第一份產(chǎn)品生產(chǎn)數(shù)據(jù)替換已存儲(chǔ)的第一份產(chǎn)品生產(chǎn)數(shù)據(jù);
若將更新的產(chǎn)品生產(chǎn)數(shù)據(jù)替換已存儲(chǔ)的第二份產(chǎn)品生產(chǎn)數(shù)據(jù)失敗,則移動(dòng)終端的設(shè)備驅(qū)動(dòng)讀取已存儲(chǔ)的第二份產(chǎn)品生產(chǎn)數(shù)據(jù)中的產(chǎn)品生產(chǎn)數(shù)據(jù)信息,若讀取成功,則重新將收到的更新的產(chǎn)品生產(chǎn)數(shù)據(jù)作為第二份產(chǎn)品生產(chǎn)數(shù)據(jù)替換已存儲(chǔ)的第二份產(chǎn)品生產(chǎn)數(shù)據(jù)。
在更新產(chǎn)品生產(chǎn)數(shù)據(jù)時(shí),可能由于操作、硬件設(shè)備讀寫等諸多原因,導(dǎo)致一次更新失敗,這里,無(wú)論第一份產(chǎn)品生產(chǎn)數(shù)據(jù)和第二份產(chǎn)品生產(chǎn)數(shù)據(jù)任意一個(gè)更新失敗,則認(rèn)為產(chǎn)品生產(chǎn)數(shù)據(jù)更新失敗。此時(shí),可選擇退出更新過(guò)程,也可嘗試讀取已存儲(chǔ)的產(chǎn)品生產(chǎn)數(shù)據(jù),若讀取成功,則證明存儲(chǔ)該產(chǎn)品生產(chǎn)數(shù)據(jù)的硬件沒有損壞,可嘗試再次更新產(chǎn)品生產(chǎn)數(shù)據(jù)。實(shí)際實(shí)現(xiàn)時(shí),可預(yù)設(shè)重復(fù)更新次數(shù)的閾值(比如:2次),當(dāng)重復(fù)更新次數(shù)達(dá)到該預(yù)設(shè)的閾值時(shí),則退出更新過(guò)程。
設(shè)備驅(qū)動(dòng)在對(duì)產(chǎn)品生產(chǎn)數(shù)據(jù)進(jìn)行讀取時(shí),使用函數(shù)bdget_disk()來(lái)獲取存儲(chǔ)產(chǎn)品生產(chǎn)數(shù)據(jù)的存儲(chǔ)器或存儲(chǔ)器分區(qū)的設(shè)備句柄(作為后面函數(shù)調(diào)用的參數(shù)),并通過(guò)函數(shù)族bread()和brelse()來(lái)讀取產(chǎn)品生產(chǎn)數(shù)據(jù)。設(shè)備驅(qū)動(dòng)可通過(guò)函數(shù)族getblk(),mark_buffer_dirty(), ll_rw_block(), brelse()實(shí)現(xiàn)兩份產(chǎn)品生產(chǎn)數(shù)據(jù)的相互替換。這樣就保證了兩份產(chǎn)品生產(chǎn)數(shù)據(jù)的同步。比如,當(dāng)兩份產(chǎn)品生產(chǎn)數(shù)據(jù)分別存儲(chǔ)于同一存儲(chǔ)器的分區(qū)BCK1和BCK2時(shí),通過(guò)上述函數(shù)族,可將BCK1的數(shù)據(jù)寫入BCK2。以上函數(shù)僅為示例,不應(yīng)視為對(duì)本發(fā)明實(shí)施例的限制。
下面,分別參考圖2、圖3和圖4說(shuō)明本發(fā)明實(shí)施例的產(chǎn)品生產(chǎn)數(shù)據(jù)讀取、初始產(chǎn)品生產(chǎn)數(shù)據(jù)的寫入以及產(chǎn)品生產(chǎn)數(shù)據(jù)的更新過(guò)程。
首先,參考圖2說(shuō)明本發(fā)明實(shí)施例的產(chǎn)品生產(chǎn)數(shù)據(jù)讀取的過(guò)程。
S201:移動(dòng)終端的上層應(yīng)用讀取第一份產(chǎn)品生產(chǎn)數(shù)據(jù)中的產(chǎn)品生產(chǎn)數(shù)據(jù)信息,若成功,則執(zhí)行步驟S202;若失敗,則執(zhí)行步驟S203;
S202:返回讀取的產(chǎn)品生產(chǎn)數(shù)據(jù)信息給上層應(yīng)用;
S203:移動(dòng)終端的設(shè)備驅(qū)動(dòng)自動(dòng)讀取第二份產(chǎn)品生產(chǎn)數(shù)據(jù)中的產(chǎn)品生產(chǎn)數(shù)據(jù)信息,若失敗,則執(zhí)行步驟S204;若成功,則執(zhí)行步驟S205,可選地,可在執(zhí)行步驟S205之前先執(zhí)行步驟S205’;
S204:確認(rèn)存儲(chǔ)產(chǎn)品生產(chǎn)數(shù)據(jù)的存儲(chǔ)器或存儲(chǔ)器分區(qū)已損壞,無(wú)法修復(fù),退出產(chǎn)品生產(chǎn)數(shù)據(jù)的讀取流程;
S205:用第二份產(chǎn)品生產(chǎn)數(shù)據(jù)替換第一份產(chǎn)品生產(chǎn)數(shù)據(jù)并返回步驟S202;
S205’:對(duì)存儲(chǔ)第一份產(chǎn)品生產(chǎn)數(shù)據(jù)的存儲(chǔ)器分區(qū)或存儲(chǔ)器進(jìn)行格式化,該步驟的目的是為了去除存儲(chǔ)器分區(qū)的可能存在的壞塊,提高替換時(shí)的存儲(chǔ)成功率。
下面,參考圖3說(shuō)明本發(fā)明實(shí)施例的初始產(chǎn)品生產(chǎn)數(shù)據(jù)的寫入過(guò)程。
S301:進(jìn)入工廠生產(chǎn)模式;
S302:將收到的初始產(chǎn)品生產(chǎn)數(shù)據(jù)作為第一份產(chǎn)品生產(chǎn)數(shù)據(jù),并存儲(chǔ)第一份產(chǎn)品生產(chǎn)數(shù)據(jù),若存儲(chǔ)成功,則執(zhí)行步驟S303,若存儲(chǔ)失敗,則返回步驟S301;
S303:將收到的初始產(chǎn)品生產(chǎn)數(shù)據(jù)作為第二份產(chǎn)品生產(chǎn)數(shù)據(jù),并存儲(chǔ)第二份產(chǎn)品生產(chǎn)數(shù)據(jù),若存儲(chǔ)成功,則執(zhí)行步驟S304,若存儲(chǔ)失敗,則返回步驟S301;
S304:進(jìn)入生產(chǎn)的其他階段。
初始產(chǎn)品生產(chǎn)數(shù)據(jù)是在移動(dòng)終端出廠前用特定的設(shè)備寫入的。一般,移動(dòng)終端要先進(jìn)入工廠生產(chǎn)模式才能寫入產(chǎn)品生產(chǎn)數(shù)據(jù)。在成功寫入產(chǎn)品生產(chǎn)數(shù)據(jù)后,再進(jìn)入工廠生產(chǎn)的其他階段,比如:外殼包裝、整機(jī)性能測(cè)試等。
從上述步驟可以看出,第一份產(chǎn)品生產(chǎn)數(shù)據(jù)或第二份產(chǎn)品生產(chǎn)數(shù)據(jù)中的任意一份存儲(chǔ)失敗,都會(huì)重新進(jìn)入工廠生產(chǎn)模式,實(shí)際實(shí)現(xiàn)時(shí),可限定重新進(jìn)入工廠生產(chǎn)模式的次數(shù)(比如:2次),以避免死循環(huán)。
最后,參考圖4說(shuō)明本發(fā)明實(shí)施例的產(chǎn)品生產(chǎn)數(shù)據(jù)的更新過(guò)程。
根據(jù)工藝需要,在特殊的情況下(比如:產(chǎn)品反包),需要在工廠內(nèi)更新產(chǎn)品生產(chǎn)數(shù)據(jù)。該過(guò)程中,分別對(duì)兩份產(chǎn)品生產(chǎn)數(shù)據(jù)進(jìn)行更新,以保證兩份產(chǎn)品生產(chǎn)數(shù)據(jù)是相同的。該過(guò)程通過(guò)如下步驟實(shí)現(xiàn):
S401:移動(dòng)終端將收到的更新的產(chǎn)品生產(chǎn)數(shù)據(jù)作為第一份產(chǎn)品生產(chǎn)數(shù)據(jù)替換已存儲(chǔ)的第一份產(chǎn)品生產(chǎn)數(shù)據(jù);若替換成功,則執(zhí)行步驟S402,若替換失敗,則執(zhí)行步驟S403;
S402:移動(dòng)終端將收到的更新的產(chǎn)品生產(chǎn)數(shù)據(jù)作為第二份產(chǎn)品生產(chǎn)數(shù)據(jù),替換已存儲(chǔ)的第二份產(chǎn)品生產(chǎn)數(shù)據(jù),若成功,則執(zhí)行步驟S405,若失敗,則執(zhí)行步驟S406;
S403:移動(dòng)終端的設(shè)備驅(qū)動(dòng)讀取已存儲(chǔ)的第一份產(chǎn)品生產(chǎn)數(shù)據(jù)中的產(chǎn)品生產(chǎn)數(shù)據(jù)信息,若讀取成功,則返回步驟S401,若失敗,則執(zhí)行步驟S404;
S404:確認(rèn)存儲(chǔ)產(chǎn)品生產(chǎn)數(shù)據(jù)的存儲(chǔ)器或存儲(chǔ)器分區(qū)已損壞,無(wú)法修復(fù),退出產(chǎn)品生產(chǎn)數(shù)據(jù)的更新過(guò)程;
S405:進(jìn)入工廠更新的其他步驟;
S406:移動(dòng)終端的設(shè)備驅(qū)動(dòng)讀取已存儲(chǔ)的第二份產(chǎn)品生產(chǎn)數(shù)據(jù)中的產(chǎn)品生產(chǎn)數(shù)據(jù)信息,若讀取成功,則返回步驟S402,若失敗,則執(zhí)行步驟S404。
實(shí)際實(shí)現(xiàn)時(shí),可限定重新更新的次數(shù)(比如:2次),以避免死循環(huán)??蛇x地,在執(zhí)行步驟S402步驟時(shí),若失敗,也可直接執(zhí)行步驟S404,即確認(rèn)產(chǎn)品生產(chǎn)數(shù)據(jù)的存儲(chǔ)器或存儲(chǔ)器分區(qū)已損壞,退出產(chǎn)品生產(chǎn)數(shù)據(jù)的更新流程,不再進(jìn)行更新。
基于同一發(fā)明構(gòu)思,本發(fā)明實(shí)施例中還提供了一種移動(dòng)終端處理產(chǎn)品生產(chǎn)數(shù)據(jù)的裝置,由于該移動(dòng)終端的實(shí)現(xiàn)原理本發(fā)明實(shí)施例的處理產(chǎn)品生產(chǎn)數(shù)據(jù)的方法相似,因此該移動(dòng)終端的實(shí)施可以參見方法的實(shí)施,重復(fù)之處不再贅述。
圖5為本發(fā)明實(shí)施例提供的處理產(chǎn)品生產(chǎn)數(shù)據(jù)的裝置的結(jié)構(gòu)示意圖。該裝置具體包括:
上層應(yīng)用501,用于讀取第一份產(chǎn)品生產(chǎn)數(shù)據(jù)中的產(chǎn)品生產(chǎn)數(shù)據(jù)信息;
設(shè)備驅(qū)動(dòng)502,用于在上層應(yīng)用501讀取第一份產(chǎn)品生產(chǎn)數(shù)據(jù)中的產(chǎn)品生產(chǎn)數(shù)據(jù)信息失敗后,讀取第二份產(chǎn)品生產(chǎn)數(shù)據(jù)中的產(chǎn)品生產(chǎn)數(shù)據(jù)信息,之后,將第一份產(chǎn)品生產(chǎn)數(shù)據(jù)替換為第二份產(chǎn)品生產(chǎn)數(shù)據(jù)。
進(jìn)一步地,本發(fā)明實(shí)施例提供的處理產(chǎn)品生產(chǎn)數(shù)據(jù)的裝置中,第二份產(chǎn)品生產(chǎn)數(shù)據(jù)僅由設(shè)備驅(qū)動(dòng)讀寫。
進(jìn)一步地,如圖6A所示,本發(fā)明實(shí)施例提供的處理產(chǎn)品生產(chǎn)數(shù)據(jù)的裝置還包括:第一存儲(chǔ)器601,其中,第一存儲(chǔ)器601包括分區(qū)BCK1和分區(qū)BCK2,分區(qū)BCK1用于存儲(chǔ)第一份產(chǎn)品生產(chǎn)數(shù)據(jù),分區(qū)BCK2用于存儲(chǔ)第二份產(chǎn)品生產(chǎn)數(shù)據(jù)。
或者,如圖6B所示,本發(fā)明實(shí)施例提供的處理產(chǎn)品生產(chǎn)數(shù)據(jù)的裝置還包括:第二存儲(chǔ)器602和第三存儲(chǔ)器603,其中,第二存儲(chǔ)器602用于存儲(chǔ)第一份產(chǎn)品生產(chǎn)數(shù)據(jù),第三存儲(chǔ)器603用于存儲(chǔ)第二份產(chǎn)品生產(chǎn)數(shù)據(jù)。
本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)明白,本發(fā)明的實(shí)施例可提供為方法、系統(tǒng)、或計(jì)算機(jī)程序產(chǎn)品。因此,本發(fā)明可采用完全硬件實(shí)施例、完全軟件實(shí)施例、或結(jié)合軟件和硬件方面的實(shí)施例的形式。而且,本發(fā)明可采用在一個(gè)或多個(gè)其中包含有計(jì)算機(jī)可用程序代碼的計(jì)算機(jī)可用存儲(chǔ)介質(zhì)(包括但不限于磁盤存儲(chǔ)器、CD-ROM、光學(xué)存儲(chǔ)器等)上實(shí)施的計(jì)算機(jī)程序產(chǎn)品的形式。
本發(fā)明是參照根據(jù)本發(fā)明實(shí)施例的方法、設(shè)備(系統(tǒng))、和計(jì)算機(jī)程序產(chǎn)品的流程圖和/或方框圖來(lái)描述的。應(yīng)理解可由計(jì)算機(jī)程序指令實(shí)現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合??商峁┻@些計(jì)算機(jī)程序指令到通用計(jì)算機(jī)、專用計(jì)算機(jī)、嵌入式處理機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn)生一個(gè)機(jī)器,使得通過(guò)計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的裝置。
這些計(jì)算機(jī)程序指令也可存儲(chǔ)在能引導(dǎo)計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備以特定方式工作的計(jì)算機(jī)可讀存儲(chǔ)器中,使得存儲(chǔ)在該計(jì)算機(jī)可讀存儲(chǔ)器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能。
這些計(jì)算機(jī)程序指令也可裝載到計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備上,使得在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計(jì)算機(jī)實(shí)現(xiàn)的處理,從而在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行的指令提供用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的步驟。
盡管已描述了本發(fā)明的優(yōu)選實(shí)施例,但本領(lǐng)域內(nèi)的技術(shù)人員一旦得知了基本創(chuàng)造性概念,則可對(duì)這些實(shí)施例作出另外的變更和修改。所以,所附權(quán)利要求意欲解釋為包括優(yōu)選實(shí)施例以及落入本發(fā)明范圍的所有變更和修改。
顯然,本領(lǐng)域的技術(shù)人員可以對(duì)本發(fā)明進(jìn)行各種改動(dòng)和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動(dòng)和變型在內(nèi)。