本文作者:kaifamei

一種通訊錄加載方法、系統(tǒng)、車機(jī)及存儲(chǔ)介質(zhì)與流程

更新時(shí)間:2025-12-26 22:21:20 0條評(píng)論

一種通訊錄加載方法、系統(tǒng)、車機(jī)及存儲(chǔ)介質(zhì)與流程



1.本發(fā)明涉及車載藍(lán)牙通訊技術(shù)領(lǐng)域,特別是涉及一種通訊錄加載方法、系統(tǒng)、車機(jī)及存儲(chǔ)介質(zhì)。


背景技術(shù):



2.藍(lán)牙車載電話(bluetooth car phone)是指通過藍(lán)牙通信方式實(shí)現(xiàn)車機(jī)與電話間的互聯(lián),進(jìn)而實(shí)現(xiàn)在無(wú)需操作電話的情況下進(jìn)行撥打或接聽電話的系統(tǒng)和設(shè)備。但在使用藍(lán)牙車載電話實(shí)現(xiàn)時(shí),需要先將電話中的通信錄加載至車機(jī)中。
3.現(xiàn)有基于android車機(jī)的通訊錄加載方式,一般是通過車機(jī)系統(tǒng)中的內(nèi)容提供器(content provider)將讀取到通訊錄寫入車機(jī)數(shù)據(jù)庫(kù)中,并通過車機(jī)的人機(jī)交互程序從數(shù)據(jù)庫(kù)中讀取通訊錄進(jìn)行展示的。在通訊錄中包含大量數(shù)據(jù)的情況下,執(zhí)行數(shù)據(jù)庫(kù)寫入與讀取的效率會(huì)降低,進(jìn)而導(dǎo)致人機(jī)交互界面展示通訊錄的效率降低。


技術(shù)實(shí)現(xiàn)要素:



4.本發(fā)明實(shí)施例的目的在于提供一種通訊錄加載方法、系統(tǒng)、車機(jī)及存儲(chǔ)介質(zhì),以實(shí)現(xiàn)提高通訊錄的加載效率的發(fā)明目的。具體技術(shù)方案如下:
5.一種通訊錄加載方法,應(yīng)用于車機(jī),所述方法包括:
6.向處于連接狀態(tài)下的目標(biāo)移動(dòng)終端發(fā)送通訊錄請(qǐng)求報(bào)文,以使所述目標(biāo)移動(dòng)終端響應(yīng)于所述通訊錄請(qǐng)求報(bào)文,回傳包含通訊錄數(shù)據(jù)組的通訊錄數(shù)據(jù)報(bào)文;
7.讀取所述通訊錄數(shù)據(jù)報(bào)文中攜帶的所述通訊錄數(shù)據(jù)組,基于所述通訊錄數(shù)據(jù)組中通訊錄數(shù)據(jù)的數(shù)目與各所述通訊錄數(shù)據(jù)的數(shù)據(jù)量,執(zhí)行動(dòng)態(tài)內(nèi)存分配操作,并將各所述通訊錄數(shù)據(jù)存儲(chǔ)至所述動(dòng)態(tài)內(nèi)存分配操作分配的對(duì)應(yīng)的存儲(chǔ)區(qū)域中;
8.在各所述通訊錄數(shù)據(jù)均被存儲(chǔ)至對(duì)應(yīng)的所述存儲(chǔ)區(qū)域中后,生成通訊錄顯示報(bào)文,基于所述通訊錄顯示報(bào)文,從各所述存儲(chǔ)區(qū)域中讀取各所述通訊錄數(shù)據(jù),并對(duì)各所述通訊錄數(shù)據(jù)進(jìn)行顯示操作。
9.可選的,所述基于所述通訊錄數(shù)據(jù)組中通訊錄數(shù)據(jù)的數(shù)目與各所述通訊錄數(shù)據(jù)的數(shù)據(jù)量,執(zhí)行動(dòng)態(tài)內(nèi)存分配操作,包括:
10.讀取所述通訊錄數(shù)據(jù)組,獲得各所述通訊錄數(shù)據(jù)的數(shù)據(jù)量及各自的序列標(biāo)識(shí);
11.根據(jù)所述序列標(biāo)識(shí),依次對(duì)各所述通訊錄數(shù)據(jù)執(zhí)行所述動(dòng)態(tài)內(nèi)存分配操作,其中,所述動(dòng)態(tài)內(nèi)存分配操作包括:
12.將所述通訊錄數(shù)據(jù)組中未被執(zhí)行過所述動(dòng)態(tài)內(nèi)存分配操作,且所述序列標(biāo)識(shí)的優(yōu)先級(jí)最高的一個(gè)所述通訊錄數(shù)據(jù),確定為當(dāng)前通訊錄數(shù)據(jù);
13.根據(jù)所述當(dāng)前通訊錄數(shù)據(jù)的所述數(shù)據(jù)量,利用預(yù)設(shè)內(nèi)存分配算法在內(nèi)存中分配一個(gè)用于存儲(chǔ)所述當(dāng)前通訊錄數(shù)據(jù)的所述存儲(chǔ)區(qū)域,其中,所述存儲(chǔ)區(qū)域的可存儲(chǔ)容量不小于所述當(dāng)前通訊錄數(shù)據(jù)的所述數(shù)據(jù)量;
14.判斷所述通訊錄數(shù)據(jù)組中的各所述通訊錄數(shù)據(jù),是否均被執(zhí)行所述動(dòng)態(tài)內(nèi)存分配
操作,若否,則返回執(zhí)行所述將所述通訊錄數(shù)據(jù)組中未被執(zhí)行過所述動(dòng)態(tài)內(nèi)存分配操作,且所述序列標(biāo)識(shí)的優(yōu)先級(jí)最高的一個(gè)所述通訊錄數(shù)據(jù),確定為當(dāng)前通訊錄數(shù)據(jù)的步驟。
15.可選的,所述將各所述通訊錄數(shù)據(jù)存儲(chǔ)至所述動(dòng)態(tài)內(nèi)存分配操作分配的對(duì)應(yīng)的存儲(chǔ)區(qū)域中,包括:
16.將各所述通訊錄數(shù)據(jù)存儲(chǔ)至對(duì)應(yīng)的所述存儲(chǔ)區(qū)域中,并獲得多個(gè)指針,其中,所述指針與所述存儲(chǔ)區(qū)域具有對(duì)應(yīng)關(guān)系,所述指針是對(duì)應(yīng)的所述存儲(chǔ)區(qū)域在內(nèi)存中的地址信息。
17.可選的,所述在各所述通訊錄數(shù)據(jù)均被存儲(chǔ)至對(duì)應(yīng)的所述存儲(chǔ)區(qū)域中后,生成通訊錄顯示報(bào)文,包括:
18.在各所述通訊錄數(shù)據(jù)均被存儲(chǔ)至對(duì)應(yīng)的內(nèi)存地址中的情況下,將各所述指針依次添加至初始單向鏈表中,獲得單向鏈表,其中,所述單向鏈表中的各所述指針是按照指針優(yōu)先級(jí)由高到低的順序排列的,所述指針優(yōu)先級(jí)與所述指針具有對(duì)應(yīng)關(guān)系,所述指針優(yōu)先級(jí)是所述指針對(duì)應(yīng)的所述存儲(chǔ)區(qū)域中存儲(chǔ)的所述通訊錄數(shù)據(jù)的所述序列標(biāo)識(shí)的優(yōu)先級(jí);
19.基于所述單向鏈表生成所述通訊錄顯示報(bào)文。
20.可選的,所述基于所述通訊錄顯示報(bào)文,從各所述存儲(chǔ)區(qū)域中讀取各所述通訊錄數(shù)據(jù),并對(duì)各所述通訊錄數(shù)據(jù)進(jìn)行顯示操作,包括:
21.讀取所述通訊錄顯示報(bào)文中的所述單向鏈表,對(duì)所述單向鏈表中的各所述指針:
22.根據(jù)該指針的所述地址信息,讀取該指針對(duì)應(yīng)的所述存儲(chǔ)區(qū)域中存儲(chǔ)的所述通訊錄數(shù)據(jù),并將讀取到的所述通訊錄數(shù)據(jù)通過人際交互界面進(jìn)行顯示。
23.可選的,在各所述通訊錄數(shù)據(jù)均進(jìn)行顯示操作完畢的情況下,所述方法還包括:
24.讀取所述單向鏈表中的各所述指針各自對(duì)應(yīng)的所述存儲(chǔ)區(qū)域,將各所述存儲(chǔ)區(qū)域中存儲(chǔ)的所述通訊錄數(shù)據(jù),按照所述指針優(yōu)先級(jí)由高到低的順序,依次寫入預(yù)設(shè)通訊錄數(shù)據(jù)庫(kù)中,并釋放各所述存儲(chǔ)區(qū)域的存儲(chǔ)空間。
25.一種通訊錄加載系統(tǒng),所述系統(tǒng)應(yīng)用于車機(jī),所述系統(tǒng)包括:
26.通訊錄獲取模塊,用于向處于連接狀態(tài)下的目標(biāo)移動(dòng)終端發(fā)送通訊錄請(qǐng)求報(bào)文,以使所述目標(biāo)移動(dòng)終端響應(yīng)于所述通訊錄請(qǐng)求報(bào)文,回傳包含通訊錄數(shù)據(jù)組的通訊錄數(shù)據(jù)報(bào)文;
27.數(shù)據(jù)分配存儲(chǔ)模塊,用于讀取所述通訊錄數(shù)據(jù)報(bào)文中攜帶的所述通訊錄數(shù)據(jù)組,基于所述通訊錄數(shù)據(jù)組中通訊錄數(shù)據(jù)的數(shù)目與各所述通訊錄數(shù)據(jù)的數(shù)據(jù)量,執(zhí)行動(dòng)態(tài)內(nèi)存分配操作,并將各所述通訊錄數(shù)據(jù)存儲(chǔ)至所述動(dòng)態(tài)內(nèi)存分配操作分配的對(duì)應(yīng)的存儲(chǔ)區(qū)域中;
28.通訊錄顯示模塊,用于在各所述通訊錄數(shù)據(jù)均被存儲(chǔ)至對(duì)應(yīng)的所述存儲(chǔ)區(qū)域中后,生成通訊錄顯示報(bào)文,基于所述通訊錄顯示報(bào)文,從各所述存儲(chǔ)區(qū)域中讀取各所述通訊錄數(shù)據(jù),并對(duì)各所述通訊錄數(shù)據(jù)進(jìn)行顯示操作。
29.可選的,所述數(shù)據(jù)分配存儲(chǔ)模塊在執(zhí)行動(dòng)態(tài)內(nèi)存分配操作時(shí)被設(shè)置為:
30.讀取所述通訊錄數(shù)據(jù)組,獲得各所述通訊錄數(shù)據(jù)的數(shù)據(jù)量及各自的序列標(biāo)識(shí);
31.根據(jù)所述序列標(biāo)識(shí),依次對(duì)各所述通訊錄數(shù)據(jù)執(zhí)行所述動(dòng)態(tài)內(nèi)存分配操作,其中,所述動(dòng)態(tài)內(nèi)存分配操作包括:
32.將所述通訊錄數(shù)據(jù)組中未被執(zhí)行過所述動(dòng)態(tài)內(nèi)存分配操作,且所述序列標(biāo)識(shí)的優(yōu)
先級(jí)最高的一個(gè)所述通訊錄數(shù)據(jù),確定為當(dāng)前通訊錄數(shù)據(jù);
33.根據(jù)所述當(dāng)前通訊錄數(shù)據(jù)的所述數(shù)據(jù)量,利用預(yù)設(shè)內(nèi)存分配算法在內(nèi)存中分配一個(gè)用于存儲(chǔ)所述當(dāng)前通訊錄數(shù)據(jù)的所述存儲(chǔ)區(qū)域,其中,所述存儲(chǔ)區(qū)域的可存儲(chǔ)容量不小于所述當(dāng)前通訊錄數(shù)據(jù)的所述數(shù)據(jù)量;
34.判斷所述通訊錄數(shù)據(jù)組中的各所述通訊錄數(shù)據(jù),是否均被執(zhí)行所述動(dòng)態(tài)內(nèi)存分配操作,若否,則返回執(zhí)行所述將所述通訊錄數(shù)據(jù)組中未被執(zhí)行過所述動(dòng)態(tài)內(nèi)存分配操作,且所述序列標(biāo)識(shí)的優(yōu)先級(jí)最高的一個(gè)所述通訊錄數(shù)據(jù),確定為當(dāng)前通訊錄數(shù)據(jù)的步驟。
35.可選的,所述數(shù)據(jù)分配存儲(chǔ)模塊在將各所述通訊錄數(shù)據(jù)存儲(chǔ)至所述動(dòng)態(tài)內(nèi)存分配操作分配的對(duì)應(yīng)的存儲(chǔ)區(qū)域中時(shí),被設(shè)置為:
36.將各所述通訊錄數(shù)據(jù)存儲(chǔ)至對(duì)應(yīng)的所述存儲(chǔ)區(qū)域中,并獲得多個(gè)指針,其中,所述指針與所述存儲(chǔ)區(qū)域具有對(duì)應(yīng)關(guān)系,所述指針是對(duì)應(yīng)的所述存儲(chǔ)區(qū)域在內(nèi)存中的地址信息。
37.可選的,所述通訊錄顯示模塊在生成通訊錄顯示報(bào)文時(shí)被設(shè)置為:
38.在各所述通訊錄數(shù)據(jù)均被存儲(chǔ)至對(duì)應(yīng)的內(nèi)存地址中的情況下,將各所述指針依次添加至初始單向鏈表中,獲得單向鏈表,其中,所述單向鏈表中的各所述指針是按照指針優(yōu)先級(jí)由高到低的順序排列的,所述指針優(yōu)先級(jí)與所述指針具有對(duì)應(yīng)關(guān)系,所述指針優(yōu)先級(jí)是所述指針對(duì)應(yīng)的所述存儲(chǔ)區(qū)域中存儲(chǔ)的所述通訊錄數(shù)據(jù)的所述序列標(biāo)識(shí)的優(yōu)先級(jí);
39.基于所述單向鏈表生成所述通訊錄顯示報(bào)文。
40.可選的,所述通訊錄顯示模塊在基于所述通訊錄顯示報(bào)文,從各所述存儲(chǔ)區(qū)域中讀取各所述通訊錄數(shù)據(jù),并對(duì)各所述通訊錄數(shù)據(jù)進(jìn)行顯示操作時(shí)被設(shè)置為:
41.讀取所述通訊錄顯示報(bào)文中的所述單向鏈表,對(duì)所述單向鏈表中的各所述指針:
42.根據(jù)該指針的所述地址信息,讀取該指針對(duì)應(yīng)的所述存儲(chǔ)區(qū)域中存儲(chǔ)的所述通訊錄數(shù)據(jù),并將讀取到的所述通訊錄數(shù)據(jù)通過人際交互界面進(jìn)行顯示。
43.可選的,所述通訊錄加載系統(tǒng)還包括:
44.數(shù)據(jù)入庫(kù)模型,用于在各所述通訊錄數(shù)據(jù)均進(jìn)行所述顯示操作完畢的情況下,讀取所述單向鏈表中的各所述指針各自對(duì)應(yīng)的所述存儲(chǔ)區(qū)域,將各所述存儲(chǔ)區(qū)域中存儲(chǔ)的所述通訊錄數(shù)據(jù),按照所述指針優(yōu)先級(jí)由高到低的順序,依次寫入預(yù)設(shè)通訊錄數(shù)據(jù)庫(kù)中,并釋放各所述存儲(chǔ)區(qū)域的存儲(chǔ)空間。
45.一種車機(jī),所述車機(jī)包括:
46.處理器;
47.用于存儲(chǔ)所述處理器可執(zhí)行指令的存儲(chǔ)器;
48.其中,所述處理器被配置為執(zhí)行所述指令,以實(shí)現(xiàn)如上述任一種所述的通訊錄加載方法。
49.一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),當(dāng)所述計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中的指令由車機(jī)的處理器執(zhí)行時(shí),使得所述車機(jī)能夠執(zhí)行如上述任一種所述的通訊錄加載方法。
50.本發(fā)明實(shí)施例提供的一種通訊錄加載方法、系統(tǒng)、車機(jī)及存儲(chǔ)介質(zhì),可以通過對(duì)通訊錄數(shù)據(jù)組中的各通訊錄數(shù)據(jù)執(zhí)行動(dòng)態(tài)內(nèi)存分配操作,可以實(shí)現(xiàn)根據(jù)實(shí)際需求進(jìn)行內(nèi)存的即時(shí)分配,從而提高對(duì)通訊錄數(shù)據(jù)的存儲(chǔ)效率。同時(shí),通過動(dòng)態(tài)內(nèi)存分配操作,直接在內(nèi)存中劃分存儲(chǔ)區(qū)域進(jìn)行數(shù)據(jù)的讀寫,使得本發(fā)明相較于現(xiàn)有技術(shù),提高了對(duì)通訊錄數(shù)據(jù)的存
儲(chǔ)效率,從而提高了對(duì)通訊錄加載的整體運(yùn)行效率。最后,通過從各存儲(chǔ)區(qū)域中讀取各通訊錄數(shù)據(jù),并對(duì)各通訊錄數(shù)據(jù)進(jìn)行顯示操作,使得本發(fā)明相較于現(xiàn)有技術(shù)通過讀取外存數(shù)據(jù)庫(kù)的方式,提高了對(duì)通訊錄數(shù)據(jù)的讀取效率,進(jìn)而提高了通訊錄加載流程的整體速率。可見,本發(fā)明提高了對(duì)通訊錄的加載效率。
51.當(dāng)然,實(shí)施本發(fā)明的任一產(chǎn)品或方法必不一定需要同時(shí)達(dá)到以上所述的所有優(yōu)點(diǎn)。
附圖說(shuō)明
52.為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
53.圖1為本發(fā)明實(shí)施例提供的一種通訊錄加載方法的流程圖;
54.圖2為本發(fā)明的一個(gè)可選實(shí)施例提供的一種通訊錄加載系統(tǒng)的框圖;
55.圖3為本發(fā)明的另一個(gè)可選實(shí)施例提供的一種車機(jī)的框圖。
具體實(shí)施方式
56.下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
57.本發(fā)明實(shí)施例提供了一種通訊錄加載方法,應(yīng)用于車機(jī),如圖1所示,該方法包括:
58.s101、向處于連接狀態(tài)下的目標(biāo)移動(dòng)終端發(fā)送通訊錄請(qǐng)求報(bào)文,以使目標(biāo)移動(dòng)終端響應(yīng)于通訊錄請(qǐng)求報(bào)文,回傳包含通訊錄數(shù)據(jù)組的通訊錄數(shù)據(jù)報(bào)文。
59.可選的,在本發(fā)明的一個(gè)可選實(shí)施例中,上述車機(jī)可以是裝載有操作系統(tǒng)的車載設(shè)備。其中,上述操作系統(tǒng)包括但不限于:安卓(android)、linux、ios等。
60.需要說(shuō)明的是,上述連接狀態(tài)是指通過藍(lán)牙(bluetooth)技術(shù)實(shí)現(xiàn)目標(biāo)移動(dòng)終端與車機(jī)通訊連接的狀態(tài)。
61.需要說(shuō)明的是,在實(shí)際應(yīng)用場(chǎng)景下,上述目標(biāo)移動(dòng)終端的具體類型有多種,例如手機(jī)、平板電腦、智能穿戴設(shè)備等具有藍(lán)顏連接功能的設(shè)備。本發(fā)明對(duì)上述目標(biāo)移動(dòng)終端的具體類型不作過多限定。
62.可選的,在本發(fā)明的另一個(gè)可選實(shí)施例中,上述通訊錄數(shù)據(jù)組可以由目標(biāo)移動(dòng)終端內(nèi)存儲(chǔ)的各通訊錄數(shù)據(jù)構(gòu)成的數(shù)據(jù)組。該通訊錄數(shù)據(jù)組中的各通訊錄數(shù)據(jù)的排列順序,是根據(jù)目標(biāo)移動(dòng)終端將各通訊錄數(shù)據(jù)寫入通訊錄數(shù)據(jù)報(bào)文的順序確定的。
63.s102、讀取通訊錄數(shù)據(jù)報(bào)文中攜帶的通訊錄數(shù)據(jù)組,基于通訊錄數(shù)據(jù)組中通訊錄數(shù)據(jù)的數(shù)目與各通訊錄數(shù)據(jù)的數(shù)據(jù)量,執(zhí)行動(dòng)態(tài)內(nèi)存分配操作,并將各通訊錄數(shù)據(jù)存儲(chǔ)至動(dòng)態(tài)內(nèi)存分配操作分配的對(duì)應(yīng)的存儲(chǔ)區(qū)域中。
64.需要說(shuō)明的是,在實(shí)際應(yīng)用場(chǎng)景下,上述各通訊錄數(shù)據(jù)是以電子名片(versitcard,vcard)的形式存在于上述通訊錄數(shù)據(jù)報(bào)文中的。上述通訊錄數(shù)據(jù)中可以包括
多種類型的信息,例如姓名、地址、、郵箱等。本發(fā)明對(duì)通訊錄數(shù)據(jù)的具體信息內(nèi)容不作過多限定。
65.可選的,在本發(fā)明的一個(gè)可選實(shí)施例中,上述動(dòng)態(tài)內(nèi)存分配操作是指在程序執(zhí)行的過程中動(dòng)態(tài)地分配或者回收存儲(chǔ)空間的分配內(nèi)存的方法。由于在實(shí)際應(yīng)用場(chǎng)景下,受硬件設(shè)備工作狀況、傳輸環(huán)境、通訊錄數(shù)據(jù)量多等條件限制,會(huì)導(dǎo)致上述通訊錄數(shù)據(jù)報(bào)文的傳輸效率降低。若在通訊錄數(shù)據(jù)組全部傳輸完畢在進(jìn)行內(nèi)存分配等后續(xù)操作,則會(huì)降低通訊錄加載及顯示的整體效率。因此,本發(fā)明通過對(duì)通訊錄數(shù)據(jù)組中的各通訊錄數(shù)據(jù)執(zhí)行動(dòng)態(tài)內(nèi)存分配操作,可以實(shí)現(xiàn)根據(jù)實(shí)際需求進(jìn)行內(nèi)存的即時(shí)分配,從而提高對(duì)通訊錄數(shù)據(jù)的存儲(chǔ)效率。
66.可選的,在本發(fā)明的另一個(gè)可選實(shí)施例中,由于現(xiàn)有的通訊錄加載方式,是通過將通訊錄數(shù)據(jù)寫入外存數(shù)據(jù)庫(kù)中實(shí)現(xiàn)的。又由于外存數(shù)據(jù)庫(kù)庫(kù)為了存儲(chǔ)數(shù)據(jù),通常需要部署于磁盤等存儲(chǔ)介質(zhì)中。這就導(dǎo)致對(duì)外存數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)讀寫的效率低下。本發(fā)明通過上述動(dòng)態(tài)內(nèi)存分配操作,直接在內(nèi)存中劃分存儲(chǔ)區(qū)域進(jìn)行數(shù)據(jù)的讀寫,使得本發(fā)明相較于現(xiàn)有技術(shù),提高了對(duì)通訊錄數(shù)據(jù)的存儲(chǔ)效率,從而提高了對(duì)通訊錄加載的整體運(yùn)行效率。
67.可選的,在本發(fā)明的另一個(gè)可選實(shí)施例中,上述存儲(chǔ)區(qū)域,可以是內(nèi)存中預(yù)先劃分的即時(shí)讀寫區(qū)域中的部分區(qū)域,也可以是根據(jù)通訊錄數(shù)據(jù)的數(shù)據(jù)量在內(nèi)存中查到的空余區(qū)域。
68.s103、在各通訊錄數(shù)據(jù)均被存儲(chǔ)至對(duì)應(yīng)的存儲(chǔ)區(qū)域中后,生成通訊錄顯示報(bào)文,基于通訊錄顯示報(bào)文,從各存儲(chǔ)區(qū)域中讀取各通訊錄數(shù)據(jù),并對(duì)各通訊錄數(shù)據(jù)進(jìn)行顯示操作。
69.可選的,在本發(fā)明的一個(gè)可選實(shí)施例中,上述基于通訊錄顯示報(bào)文,從各存儲(chǔ)區(qū)域中讀取各通訊錄數(shù)據(jù),并對(duì)各通訊錄數(shù)據(jù)進(jìn)行顯示操作,可以是由車機(jī)中用于展示通訊錄的應(yīng)用軟件(application,app)實(shí)現(xiàn)的。
70.可選的,在本發(fā)明的另一個(gè)可選實(shí)施例中,由于上述存儲(chǔ)區(qū)域均是內(nèi)存中的區(qū)域。因此,本發(fā)明通過從各存儲(chǔ)區(qū)域中讀取各通訊錄數(shù)據(jù),并對(duì)各通訊錄數(shù)據(jù)進(jìn)行顯示操作,使得本發(fā)明相較于現(xiàn)有技術(shù)通過讀取外存數(shù)據(jù)庫(kù)的方式,提高了對(duì)通訊錄數(shù)據(jù)的讀取效率,進(jìn)而提高了通訊錄加載流程的整體速率。
71.本發(fā)明通過對(duì)通訊錄數(shù)據(jù)組中的各通訊錄數(shù)據(jù)執(zhí)行動(dòng)態(tài)內(nèi)存分配操作,可以實(shí)現(xiàn)根據(jù)實(shí)際需求進(jìn)行內(nèi)存的即時(shí)分配,從而提高對(duì)通訊錄數(shù)據(jù)的存儲(chǔ)效率。同時(shí),通過動(dòng)態(tài)內(nèi)存分配操作,直接在內(nèi)存中劃分存儲(chǔ)區(qū)域進(jìn)行數(shù)據(jù)的讀寫,使得本發(fā)明相較于現(xiàn)有技術(shù),提高了對(duì)通訊錄數(shù)據(jù)的存儲(chǔ)效率,從而提高了對(duì)通訊錄加載的整體運(yùn)行效率。最后,通過從各存儲(chǔ)區(qū)域中讀取各通訊錄數(shù)據(jù),并對(duì)各通訊錄數(shù)據(jù)進(jìn)行顯示操作,使得本發(fā)明相較于現(xiàn)有技術(shù)通過讀取外存數(shù)據(jù)庫(kù)的方式,提高了對(duì)通訊錄數(shù)據(jù)的讀取效率,進(jìn)而提高了通訊錄加載流程的整體速率。可見,本發(fā)明提高了對(duì)通訊錄的加載效率。
72.可選的,上述基于通訊錄數(shù)據(jù)組中通訊錄數(shù)據(jù)的數(shù)目與各通訊錄數(shù)據(jù)的數(shù)據(jù)量,執(zhí)行動(dòng)態(tài)內(nèi)存分配操作,包括:
73.讀取通訊錄數(shù)據(jù)組,獲得各通訊錄數(shù)據(jù)的數(shù)據(jù)量及各自的序列標(biāo)識(shí);
74.根據(jù)序列標(biāo)識(shí),依次對(duì)各通訊錄數(shù)據(jù)執(zhí)行動(dòng)態(tài)內(nèi)存分配操作,其中,動(dòng)態(tài)內(nèi)存分配操作包括:
75.將通訊錄數(shù)據(jù)組中未被執(zhí)行過動(dòng)態(tài)內(nèi)存分配操作,且序列標(biāo)識(shí)的優(yōu)先級(jí)最高的一
個(gè)通訊錄數(shù)據(jù),確定為當(dāng)前通訊錄數(shù)據(jù);
76.根據(jù)當(dāng)前通訊錄數(shù)據(jù)的數(shù)據(jù)量,利用預(yù)設(shè)內(nèi)存分配算法在內(nèi)存中分配一個(gè)用于存儲(chǔ)當(dāng)前通訊錄數(shù)據(jù)的存儲(chǔ)區(qū)域,其中,存儲(chǔ)區(qū)域的可存儲(chǔ)容量不小于當(dāng)前通訊錄數(shù)據(jù)的數(shù)據(jù)量;
77.判斷通訊錄數(shù)據(jù)組中的各通訊錄數(shù)據(jù),是否均被執(zhí)行動(dòng)態(tài)內(nèi)存分配操作,若否,則返回執(zhí)行將通訊錄數(shù)據(jù)組中未被執(zhí)行過動(dòng)態(tài)內(nèi)存分配操作,且序列標(biāo)識(shí)的優(yōu)先級(jí)最高的一個(gè)通訊錄數(shù)據(jù),確定為當(dāng)前通訊錄數(shù)據(jù)的步驟。
78.可選的,在本發(fā)明的一個(gè)可選實(shí)施例中,由于在實(shí)際應(yīng)用場(chǎng)景下,通訊錄數(shù)據(jù)組中的通訊錄數(shù)據(jù)是動(dòng)態(tài)增加的。因此,通過設(shè)置上述序列標(biāo)識(shí),可以實(shí)現(xiàn)對(duì)通訊錄數(shù)據(jù)的準(zhǔn)確區(qū)分,避免新增的通訊錄數(shù)據(jù)被遺漏。
79.本領(lǐng)域技術(shù)人員可以理解的是,在實(shí)際應(yīng)用場(chǎng)景下,上述利用預(yù)設(shè)內(nèi)存分配算法在內(nèi)存中分配一個(gè)用于存儲(chǔ)當(dāng)前通訊錄數(shù)據(jù)的存儲(chǔ)區(qū)域的實(shí)現(xiàn)方式有多種,例如malloc函數(shù)、calloc函數(shù)等。本發(fā)明對(duì)上述預(yù)設(shè)內(nèi)存分配算法的具體類型及構(gòu)建方式,不作過多限定和贅述。
80.可選的,將各通訊錄數(shù)據(jù)存儲(chǔ)至動(dòng)態(tài)內(nèi)存分配操作分配的對(duì)應(yīng)的存儲(chǔ)區(qū)域中,包括:
81.將各通訊錄數(shù)據(jù)存儲(chǔ)至對(duì)應(yīng)的存儲(chǔ)區(qū)域中,并獲得多個(gè)指針,其中,指針與存儲(chǔ)區(qū)域具有對(duì)應(yīng)關(guān)系,指針是對(duì)應(yīng)的存儲(chǔ)區(qū)域在內(nèi)存中的地址信息。
82.需要說(shuō)明的是,上述指針(pointer)表征了用來(lái)存放通訊錄數(shù)據(jù)的存儲(chǔ)區(qū)域的地址。由于在同一個(gè)中央處理器(central processing unit,cpu)架構(gòu)下,不同類型的數(shù)據(jù)所占用的存儲(chǔ)空間長(zhǎng)度是不同的,但不同指針?biāo)加玫拇鎯?chǔ)空間長(zhǎng)度是相同的。因此,本發(fā)明通過設(shè)置指針來(lái)建立指針與存儲(chǔ)區(qū)域的對(duì)應(yīng)關(guān)系,避免了后續(xù)步驟由于需要處理的數(shù)據(jù)量不統(tǒng)一帶來(lái)的效率降低的風(fēng)險(xiǎn)。
83.可選的,在各通訊錄數(shù)據(jù)均被存儲(chǔ)至對(duì)應(yīng)的存儲(chǔ)區(qū)域中后,生成通訊錄顯示報(bào)文,包括:
84.在各通訊錄數(shù)據(jù)均被存儲(chǔ)至對(duì)應(yīng)的內(nèi)存地址中的情況下,將各指針依次添加至初始單向鏈表中,獲得單向鏈表,其中,單向鏈表中的各指針是按照指針優(yōu)先級(jí)由高到低的順序排列的,指針優(yōu)先級(jí)與指針具有對(duì)應(yīng)關(guān)系,指針優(yōu)先級(jí)是指針對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)的通訊錄數(shù)據(jù)的序列標(biāo)識(shí)的優(yōu)先級(jí);
85.基于單向鏈表生成通訊錄顯示報(bào)文。
86.可選的,在本發(fā)明的一個(gè)可選實(shí)施例中,上述單向鏈表是利用動(dòng)態(tài)內(nèi)存分布,使用結(jié)構(gòu)體配合指針來(lái)實(shí)現(xiàn)的一種數(shù)據(jù)結(jié)構(gòu)。由于單向鏈表在確定頭部指針后,其后續(xù)的指針訪問數(shù)據(jù)可以依據(jù)指針指向自動(dòng)執(zhí)行。因此,本發(fā)明通過設(shè)置上述單向鏈表,可以提高在通訊錄加載過程中,各通訊錄數(shù)據(jù)讀取和顯示的準(zhǔn)確性。
87.可選的,基于通訊錄顯示報(bào)文,從各存儲(chǔ)區(qū)域中讀取各通訊錄數(shù)據(jù),并對(duì)各通訊錄數(shù)據(jù)進(jìn)行顯示操作,包括:
88.讀取通訊錄顯示報(bào)文中的單向鏈表,對(duì)單向鏈表中的各指針:
89.根據(jù)該指針的地址信息,讀取該指針對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)的通訊錄數(shù)據(jù),并將讀取到的通訊錄數(shù)據(jù)通過人際交互界面進(jìn)行顯示。
90.可選的,在各通訊錄數(shù)據(jù)均進(jìn)行顯示操作完畢的情況下,上述如圖1所示的通訊錄加載方法還包括:
91.讀取單向鏈表中的各指針各自對(duì)應(yīng)的存儲(chǔ)區(qū)域,將各存儲(chǔ)區(qū)域中存儲(chǔ)的通訊錄數(shù)據(jù),按照指針優(yōu)先級(jí)由高到低的順序,依次寫入預(yù)設(shè)通訊錄數(shù)據(jù)庫(kù)中,并釋放各存儲(chǔ)區(qū)域的存儲(chǔ)空間。
92.需要說(shuō)明的是,由于在內(nèi)存中存儲(chǔ)數(shù)據(jù),會(huì)由于下電丟失導(dǎo)致數(shù)據(jù)丟失的風(fēng)險(xiǎn)。因此,本發(fā)明通過在將各通訊錄數(shù)據(jù)均執(zhí)行顯示操作完畢后,將通訊錄數(shù)據(jù)寫入預(yù)設(shè)通訊錄數(shù)據(jù)庫(kù)中,避免了下電丟失數(shù)據(jù)的風(fēng)險(xiǎn)。
93.與上述方法實(shí)施例相對(duì)應(yīng)地,本發(fā)明還提供了一種通訊錄加載系統(tǒng),如圖2所示,該通訊錄加載系統(tǒng)應(yīng)用于車機(jī),該通訊錄加載系統(tǒng)包括:
94.通訊錄獲取模塊201,用于向處于連接狀態(tài)下的目標(biāo)移動(dòng)終端發(fā)送通訊錄請(qǐng)求報(bào)文,以使目標(biāo)移動(dòng)終端響應(yīng)于通訊錄請(qǐng)求報(bào)文,回傳包含通訊錄數(shù)據(jù)組的通訊錄數(shù)據(jù)報(bào)文。
95.數(shù)據(jù)分配存儲(chǔ)模塊202,用于讀取通訊錄數(shù)據(jù)報(bào)文中攜帶的通訊錄數(shù)據(jù)組,基于通訊錄數(shù)據(jù)組中通訊錄數(shù)據(jù)的數(shù)目與各通訊錄數(shù)據(jù)的數(shù)據(jù)量,執(zhí)行動(dòng)態(tài)內(nèi)存分配操作,并將各通訊錄數(shù)據(jù)存儲(chǔ)至動(dòng)態(tài)內(nèi)存分配操作分配的對(duì)應(yīng)的存儲(chǔ)區(qū)域中。
96.通訊錄顯示模塊203,用于在各通訊錄數(shù)據(jù)均被存儲(chǔ)至對(duì)應(yīng)的存儲(chǔ)區(qū)域中后,生成通訊錄顯示報(bào)文,基于通訊錄顯示報(bào)文,從各存儲(chǔ)區(qū)域中讀取各通訊錄數(shù)據(jù),并對(duì)各通訊錄數(shù)據(jù)進(jìn)行顯示操作。
97.可選的,上述數(shù)據(jù)分配存儲(chǔ)模塊202在執(zhí)行動(dòng)態(tài)內(nèi)存分配操作時(shí)被設(shè)置為:
98.讀取通訊錄數(shù)據(jù)組,獲得各通訊錄數(shù)據(jù)的數(shù)據(jù)量及各自的序列標(biāo)識(shí);
99.根據(jù)序列標(biāo)識(shí),依次對(duì)各通訊錄數(shù)據(jù)執(zhí)行動(dòng)態(tài)內(nèi)存分配操作,其中,動(dòng)態(tài)內(nèi)存分配操作包括:
100.將通訊錄數(shù)據(jù)組中未被執(zhí)行過動(dòng)態(tài)內(nèi)存分配操作,且序列標(biāo)識(shí)的優(yōu)先級(jí)最高的一個(gè)通訊錄數(shù)據(jù),確定為當(dāng)前通訊錄數(shù)據(jù);
101.根據(jù)當(dāng)前通訊錄數(shù)據(jù)的數(shù)據(jù)量,利用預(yù)設(shè)內(nèi)存分配算法在內(nèi)存中分配一個(gè)用于存儲(chǔ)當(dāng)前通訊錄數(shù)據(jù)的存儲(chǔ)區(qū)域,其中,存儲(chǔ)區(qū)域的可存儲(chǔ)容量不小于當(dāng)前通訊錄數(shù)據(jù)的數(shù)據(jù)量;
102.判斷通訊錄數(shù)據(jù)組中的各通訊錄數(shù)據(jù),是否均被執(zhí)行動(dòng)態(tài)內(nèi)存分配操作,若否,則返回執(zhí)行將通訊錄數(shù)據(jù)組中未被執(zhí)行過動(dòng)態(tài)內(nèi)存分配操作,且序列標(biāo)識(shí)的優(yōu)先級(jí)最高的一個(gè)通訊錄數(shù)據(jù),確定為當(dāng)前通訊錄數(shù)據(jù)的步驟。
103.可選的,上述數(shù)據(jù)分配存儲(chǔ)模塊202在將各通訊錄數(shù)據(jù)存儲(chǔ)至動(dòng)態(tài)內(nèi)存分配操作分配的對(duì)應(yīng)的存儲(chǔ)區(qū)域中時(shí),被設(shè)置為:
104.將各通訊錄數(shù)據(jù)存儲(chǔ)至對(duì)應(yīng)的存儲(chǔ)區(qū)域中,并獲得多個(gè)指針,其中,指針與存儲(chǔ)區(qū)域具有對(duì)應(yīng)關(guān)系,指針是對(duì)應(yīng)的存儲(chǔ)區(qū)域在內(nèi)存中的地址信息。
105.可選的,上述通訊錄顯示模塊203在生成通訊錄顯示報(bào)文時(shí)被配置為:
106.在各通訊錄數(shù)據(jù)均被存儲(chǔ)至對(duì)應(yīng)的內(nèi)存地址中的情況下,將各指針依次添加至初始單向鏈表中,獲得單向鏈表,其中,單向鏈表中的各指針是按照指針優(yōu)先級(jí)由高到低的順序排列的,指針優(yōu)先級(jí)與指針具有對(duì)應(yīng)關(guān)系,指針優(yōu)先級(jí)是指針對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)的通訊錄數(shù)據(jù)的序列標(biāo)識(shí)的優(yōu)先級(jí);
107.基于單向鏈表生成通訊錄顯示報(bào)文。
108.可選的,上述通訊錄顯示模塊203在基于通訊錄顯示報(bào)文,從各存儲(chǔ)區(qū)域中讀取各通訊錄數(shù)據(jù),并對(duì)各通訊錄數(shù)據(jù)進(jìn)行顯示操作時(shí)被設(shè)置為:
109.讀取通訊錄顯示報(bào)文中的單向鏈表,對(duì)單向鏈表中的各指針:
110.根據(jù)該指針的地址信息,讀取該指針對(duì)應(yīng)的存儲(chǔ)區(qū)域中存儲(chǔ)的通訊錄數(shù)據(jù),并將讀取到的通訊錄數(shù)據(jù)通過人際交互界面進(jìn)行顯示。
111.可選的,上述如圖2所示的通訊錄加載系統(tǒng)還包括:
112.數(shù)據(jù)入庫(kù)模塊,用于在各通訊錄數(shù)據(jù)均進(jìn)行顯示操作完畢的情況下,讀取單向鏈表中的各指針各自對(duì)應(yīng)的存儲(chǔ)區(qū)域,將各存儲(chǔ)區(qū)域中存儲(chǔ)的通訊錄數(shù)據(jù),按照指針優(yōu)先級(jí)由高到低的順序,依次寫入預(yù)設(shè)通訊錄數(shù)據(jù)庫(kù)中,并釋放各存儲(chǔ)區(qū)域的存儲(chǔ)空間。
113.本發(fā)明實(shí)施例還提供了一種車機(jī),如圖3所示,該車機(jī)包括:
114.處理器301;
115.用于存儲(chǔ)處理器301可執(zhí)行指令的存儲(chǔ)器302;
116.其中,處理器301被配置為執(zhí)行指令,以實(shí)現(xiàn)如上述任一種的通訊錄加載方法。
117.本發(fā)明實(shí)施例還提供了一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),當(dāng)計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中的指令由車機(jī)的處理器執(zhí)行時(shí),使得車機(jī)能夠執(zhí)行如上述任一種的通訊錄加載方法。
118.存儲(chǔ)器可能包括計(jì)算機(jī)可讀介質(zhì)中的非永久性存儲(chǔ)器,隨機(jī)存取存儲(chǔ)器(ram)和/或非易失性內(nèi)存等形式,如只讀存儲(chǔ)器(rom)或閃存(flash ram),存儲(chǔ)器包括至少一個(gè)存儲(chǔ)芯片。存儲(chǔ)器是計(jì)算機(jī)可讀介質(zhì)的示例。
119.計(jì)算機(jī)可讀介質(zhì)包括永久性和非永久性、可移動(dòng)和非可移動(dòng)媒體可以由任何方法或技術(shù)來(lái)實(shí)現(xiàn)信息存儲(chǔ)。信息可以是計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序的模塊或其他數(shù)據(jù)。計(jì)算機(jī)的存儲(chǔ)介質(zhì)的例子包括,但不限于相變內(nèi)存(pram)、靜態(tài)隨機(jī)存取存儲(chǔ)器(sram)、動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(dram)、其他類型的隨機(jī)存取存儲(chǔ)器(ram)、只讀存儲(chǔ)器(rom)、電可擦除可編程只讀存儲(chǔ)器(eeprom)、快閃記憶體或其他內(nèi)存技術(shù)、只讀光盤只讀存儲(chǔ)器(cd-rom)、數(shù)字多功能光盤(dvd)或其他光學(xué)存儲(chǔ)、磁盒式磁帶,磁帶磁磁盤存儲(chǔ)或其他磁性存儲(chǔ)設(shè)備或任何其他非傳輸介質(zhì),可用于存儲(chǔ)可以被計(jì)算設(shè)備訪問的信息。按照本文中的界定,計(jì)算機(jī)可讀介質(zhì)不包括暫存電腦可讀媒體(transitory media),如調(diào)制的數(shù)據(jù)信號(hào)和載波。
120.本領(lǐng)域技術(shù)人員應(yīng)明白,本技術(shù)的實(shí)施例可提供為方法、系統(tǒng)或計(jì)算機(jī)程序產(chǎn)品。因此,本技術(shù)可采用完全硬件實(shí)施例、完全軟件實(shí)施例或結(jié)合軟件和硬件方面的實(shí)施例的形式。而且,本技術(shù)可采用在一個(gè)或多個(gè)其中包含有計(jì)算機(jī)可用程序代碼的計(jì)算機(jī)可用存儲(chǔ)介質(zhì)(包括但不限于磁盤存儲(chǔ)器、cd-rom、光學(xué)存儲(chǔ)器等)上實(shí)施的計(jì)算機(jī)程序產(chǎn)品的形式。
121.需要說(shuō)明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語(yǔ)僅僅用來(lái)將一個(gè)實(shí)體或者操作與另一個(gè)實(shí)體或操作區(qū)分開來(lái),而不一定要求或者暗示這些實(shí)體或操作之間存在任何這種實(shí)際的關(guān)系或者順序。還需要說(shuō)明的是,術(shù)語(yǔ)“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、商品或者設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、商品或者設(shè)備所固有的要素。在沒有更多限制的情況下,由語(yǔ)句“包括一個(gè)
……”
限定的要素,并不排除在包括要素的過程、方法、商品或者設(shè)備中還存在另外的相同要素。
122.本說(shuō)明書中的各個(gè)實(shí)施例均采用相關(guān)的方式描述,各個(gè)實(shí)施例之間相同相似的部分互相參見即可,每個(gè)實(shí)施例重點(diǎn)說(shuō)明的都是與其他實(shí)施例的不同之處。尤其,對(duì)于系統(tǒng)實(shí)施例而言,由于其基本相似于方法實(shí)施例,所以描述的比較簡(jiǎn)單,相關(guān)之處參見方法實(shí)施例的部分說(shuō)明即可。
123.以上僅為本技術(shù)的實(shí)施例而已,并不用于限制本技術(shù)。對(duì)于本領(lǐng)域技術(shù)人員來(lái)說(shuō),本技術(shù)可以有各種更改和變化。凡在本技術(shù)的精神和原理之內(nèi)所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本技術(shù)的權(quán)利要求范圍之內(nèi)。

技術(shù)特征:


1.一種通訊錄加載方法,其特征在于,應(yīng)用于車機(jī),所述方法包括:向處于連接狀態(tài)下的目標(biāo)移動(dòng)終端發(fā)送通訊錄請(qǐng)求報(bào)文,以使所述目標(biāo)移動(dòng)終端響應(yīng)于所述通訊錄請(qǐng)求報(bào)文,回傳包含通訊錄數(shù)據(jù)組的通訊錄數(shù)據(jù)報(bào)文;讀取所述通訊錄數(shù)據(jù)報(bào)文中攜帶的所述通訊錄數(shù)據(jù)組,基于所述通訊錄數(shù)據(jù)組中通訊錄數(shù)據(jù)的數(shù)目與各所述通訊錄數(shù)據(jù)的數(shù)據(jù)量,執(zhí)行動(dòng)態(tài)內(nèi)存分配操作,并將各所述通訊錄數(shù)據(jù)存儲(chǔ)至所述動(dòng)態(tài)內(nèi)存分配操作分配的對(duì)應(yīng)的存儲(chǔ)區(qū)域中;在各所述通訊錄數(shù)據(jù)均被存儲(chǔ)至對(duì)應(yīng)的所述存儲(chǔ)區(qū)域中后,生成通訊錄顯示報(bào)文,基于所述通訊錄顯示報(bào)文,從各所述存儲(chǔ)區(qū)域中讀取各所述通訊錄數(shù)據(jù),并對(duì)各所述通訊錄數(shù)據(jù)進(jìn)行顯示操作。2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述基于所述通訊錄數(shù)據(jù)組中通訊錄數(shù)據(jù)的數(shù)目與各所述通訊錄數(shù)據(jù)的數(shù)據(jù)量,執(zhí)行動(dòng)態(tài)內(nèi)存分配操作,包括:讀取所述通訊錄數(shù)據(jù)組,獲得各所述通訊錄數(shù)據(jù)的數(shù)據(jù)量及各自的序列標(biāo)識(shí);根據(jù)所述序列標(biāo)識(shí),依次對(duì)各所述通訊錄數(shù)據(jù)執(zhí)行所述動(dòng)態(tài)內(nèi)存分配操作,其中,所述動(dòng)態(tài)內(nèi)存分配操作包括:將所述通訊錄數(shù)據(jù)組中未被執(zhí)行過所述動(dòng)態(tài)內(nèi)存分配操作,且所述序列標(biāo)識(shí)的優(yōu)先級(jí)最高的一個(gè)所述通訊錄數(shù)據(jù),確定為當(dāng)前通訊錄數(shù)據(jù);根據(jù)所述當(dāng)前通訊錄數(shù)據(jù)的所述數(shù)據(jù)量,利用預(yù)設(shè)內(nèi)存分配算法在內(nèi)存中分配一個(gè)用于存儲(chǔ)所述當(dāng)前通訊錄數(shù)據(jù)的所述存儲(chǔ)區(qū)域,其中,所述存儲(chǔ)區(qū)域的可存儲(chǔ)容量不小于所述當(dāng)前通訊錄數(shù)據(jù)的所述數(shù)據(jù)量;判斷所述通訊錄數(shù)據(jù)組中的各所述通訊錄數(shù)據(jù),是否均被執(zhí)行所述動(dòng)態(tài)內(nèi)存分配操作,若否,則返回執(zhí)行所述將所述通訊錄數(shù)據(jù)組中未被執(zhí)行過所述動(dòng)態(tài)內(nèi)存分配操作,且所述序列標(biāo)識(shí)的優(yōu)先級(jí)最高的一個(gè)所述通訊錄數(shù)據(jù),確定為當(dāng)前通訊錄數(shù)據(jù)的步驟。3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述將各所述通訊錄數(shù)據(jù)存儲(chǔ)至所述動(dòng)態(tài)內(nèi)存分配操作分配的對(duì)應(yīng)的存儲(chǔ)區(qū)域中,包括:將各所述通訊錄數(shù)據(jù)存儲(chǔ)至對(duì)應(yīng)的所述存儲(chǔ)區(qū)域中,并獲得多個(gè)指針,其中,所述指針與所述存儲(chǔ)區(qū)域具有對(duì)應(yīng)關(guān)系,所述指針是對(duì)應(yīng)的所述存儲(chǔ)區(qū)域在內(nèi)存中的地址信息。4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述在各所述通訊錄數(shù)據(jù)均被存儲(chǔ)至對(duì)應(yīng)的所述存儲(chǔ)區(qū)域中后,生成通訊錄顯示報(bào)文,包括:在各所述通訊錄數(shù)據(jù)均被存儲(chǔ)至對(duì)應(yīng)的內(nèi)存地址中的情況下,將各所述指針依次添加至初始單向鏈表中,獲得單向鏈表,其中,所述單向鏈表中的各所述指針是按照指針優(yōu)先級(jí)由高到低的順序排列的,所述指針優(yōu)先級(jí)與所述指針具有對(duì)應(yīng)關(guān)系,所述指針優(yōu)先級(jí)是所述指針對(duì)應(yīng)的所述存儲(chǔ)區(qū)域中存儲(chǔ)的所述通訊錄數(shù)據(jù)的所述序列標(biāo)識(shí)的優(yōu)先級(jí);基于所述單向鏈表生成所述通訊錄顯示報(bào)文。5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述基于所述通訊錄顯示報(bào)文,從各所述存儲(chǔ)區(qū)域中讀取各所述通訊錄數(shù)據(jù),并對(duì)各所述通訊錄數(shù)據(jù)進(jìn)行顯示操作,包括:讀取所述通訊錄顯示報(bào)文中的所述單向鏈表,對(duì)所述單向鏈表中的各所述指針:根據(jù)該指針的所述地址信息,讀取該指針對(duì)應(yīng)的所述存儲(chǔ)區(qū)域中存儲(chǔ)的所述通訊錄數(shù)據(jù),并將讀取到的所述通訊錄數(shù)據(jù)通過人際交互界面進(jìn)行顯示。6.根據(jù)權(quán)利要求5所述的方法,其特征在于,在各所述通訊錄數(shù)據(jù)均進(jìn)行顯示操作完畢
的情況下,所述方法還包括:讀取所述單向鏈表中的各所述指針各自對(duì)應(yīng)的所述存儲(chǔ)區(qū)域,將各所述存儲(chǔ)區(qū)域中存儲(chǔ)的所述通訊錄數(shù)據(jù),按照所述指針優(yōu)先級(jí)由高到低的順序,依次寫入預(yù)設(shè)通訊錄數(shù)據(jù)庫(kù)中,并釋放各所述存儲(chǔ)區(qū)域的存儲(chǔ)空間。7.一種通訊錄加載系統(tǒng),其特征在于,所述系統(tǒng)應(yīng)用于車機(jī),所述系統(tǒng)包括:通訊錄獲取模塊,用于向處于連接狀態(tài)下的目標(biāo)移動(dòng)終端發(fā)送通訊錄請(qǐng)求報(bào)文,以使所述目標(biāo)移動(dòng)終端響應(yīng)于所述通訊錄請(qǐng)求報(bào)文,回傳包含通訊錄數(shù)據(jù)組的通訊錄數(shù)據(jù)報(bào)文;數(shù)據(jù)分配存儲(chǔ)模塊,用于讀取所述通訊錄數(shù)據(jù)報(bào)文中攜帶的所述通訊錄數(shù)據(jù)組,基于所述通訊錄數(shù)據(jù)組中通訊錄數(shù)據(jù)的數(shù)目與各所述通訊錄數(shù)據(jù)的數(shù)據(jù)量,執(zhí)行動(dòng)態(tài)內(nèi)存分配操作,并將各所述通訊錄數(shù)據(jù)存儲(chǔ)至所述動(dòng)態(tài)內(nèi)存分配操作分配的對(duì)應(yīng)的存儲(chǔ)區(qū)域中;通訊錄顯示模塊,用于在各所述通訊錄數(shù)據(jù)均被存儲(chǔ)至對(duì)應(yīng)的所述存儲(chǔ)區(qū)域中后,生成通訊錄顯示報(bào)文,基于所述通訊錄顯示報(bào)文,從各所述存儲(chǔ)區(qū)域中讀取各所述通訊錄數(shù)據(jù),并對(duì)各所述通訊錄數(shù)據(jù)進(jìn)行顯示操作。8.根據(jù)權(quán)利要求7所述的系統(tǒng),其特征在于,所述數(shù)據(jù)分配存儲(chǔ)模塊在執(zhí)行動(dòng)態(tài)內(nèi)存分配操作時(shí)被設(shè)置為:讀取所述通訊錄數(shù)據(jù)組,獲得各所述通訊錄數(shù)據(jù)的數(shù)據(jù)量及各自的序列標(biāo)識(shí);根據(jù)所述序列標(biāo)識(shí),依次對(duì)各所述通訊錄數(shù)據(jù)執(zhí)行所述動(dòng)態(tài)內(nèi)存分配操作,其中,所述動(dòng)態(tài)內(nèi)存分配操作包括:將所述通訊錄數(shù)據(jù)組中未被執(zhí)行過所述動(dòng)態(tài)內(nèi)存分配操作,且所述序列標(biāo)識(shí)的優(yōu)先級(jí)最高的一個(gè)所述通訊錄數(shù)據(jù),確定為當(dāng)前通訊錄數(shù)據(jù);根據(jù)所述當(dāng)前通訊錄數(shù)據(jù)的所述數(shù)據(jù)量,利用預(yù)設(shè)內(nèi)存分配算法在內(nèi)存中分配一個(gè)用于存儲(chǔ)所述當(dāng)前通訊錄數(shù)據(jù)的所述存儲(chǔ)區(qū)域,其中,所述存儲(chǔ)區(qū)域的可存儲(chǔ)容量不小于所述當(dāng)前通訊錄數(shù)據(jù)的所述數(shù)據(jù)量;判斷所述通訊錄數(shù)據(jù)組中的各所述通訊錄數(shù)據(jù),是否均被執(zhí)行所述動(dòng)態(tài)內(nèi)存分配操作,若否,則返回執(zhí)行所述將所述通訊錄數(shù)據(jù)組中未被執(zhí)行過所述動(dòng)態(tài)內(nèi)存分配操作,且所述序列標(biāo)識(shí)的優(yōu)先級(jí)最高的一個(gè)所述通訊錄數(shù)據(jù),確定為當(dāng)前通訊錄數(shù)據(jù)的步驟。9.一種車機(jī),其特征在于,所述車機(jī)包括:處理器;用于存儲(chǔ)所述處理器可執(zhí)行指令的存儲(chǔ)器;其中,所述處理器被配置為執(zhí)行所述指令,以實(shí)現(xiàn)如權(quán)利要求1至6中任一項(xiàng)所述的通訊錄加載方法。10.一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其特征在于,當(dāng)所述計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中的指令由車機(jī)的處理器執(zhí)行時(shí),使得所述車機(jī)能夠執(zhí)行如權(quán)利要求1至6中任一項(xiàng)所述的通訊錄加載方法。

技術(shù)總結(jié)


本發(fā)明實(shí)施例提供了一種通訊錄加載方法、系統(tǒng)、車機(jī)及存儲(chǔ)介質(zhì),其中,方法包括:向處于連接狀態(tài)下的目標(biāo)移動(dòng)終端發(fā)送通訊錄請(qǐng)求報(bào)文,以使目標(biāo)移動(dòng)終端響應(yīng)于通訊錄請(qǐng)求報(bào)文,回傳包含通訊錄數(shù)據(jù)組的通訊錄數(shù)據(jù)報(bào)文,讀取通訊錄數(shù)據(jù)報(bào)文中攜帶的通訊錄數(shù)據(jù)組,基于通訊錄數(shù)據(jù)組中通訊錄數(shù)據(jù)的數(shù)目與各通訊錄數(shù)據(jù)的數(shù)據(jù)量,執(zhí)行動(dòng)態(tài)內(nèi)存分配操作,并將各通訊錄數(shù)據(jù)存儲(chǔ)至動(dòng)態(tài)內(nèi)存分配操作分配的對(duì)應(yīng)的存儲(chǔ)區(qū)域中,在各通訊錄數(shù)據(jù)均被存儲(chǔ)至對(duì)應(yīng)的存儲(chǔ)區(qū)域中后,生成通訊錄顯示報(bào)文,基于通訊錄顯示報(bào)文,從各存儲(chǔ)區(qū)域中讀取各通訊錄數(shù)據(jù),并對(duì)各通訊錄數(shù)據(jù)進(jìn)行顯示操作。本發(fā)明提高了對(duì)通訊錄的加載效率。高了對(duì)通訊錄的加載效率。高了對(duì)通訊錄的加載效率。


技術(shù)研發(fā)人員:

邵壽華

受保護(hù)的技術(shù)使用者:

上海汽車集團(tuán)股份有限公司

技術(shù)研發(fā)日:

2022.09.27

技術(shù)公布日:

2023/1/17


文章投稿或轉(zhuǎn)載聲明

本文鏈接:http://m.newhan.cn/zhuanli/patent-1-84015-0.html

來(lái)源:專利查詢檢索下載-實(shí)用文體寫作網(wǎng)版權(quán)所有,轉(zhuǎn)載請(qǐng)保留出處。本站文章發(fā)布于 2023-01-28 07:11:31

發(fā)表評(píng)論

驗(yàn)證碼:
用戶名: 密碼: 匿名發(fā)表
評(píng)論列表 (有 條評(píng)論
2人圍觀
參與討論