聯(lián)系人同步裝置及方法
【專(zhuān)利摘要】本發(fā)明公開(kāi)一種聯(lián)系人同步裝置,包括:請(qǐng)求模塊,用于發(fā)送聯(lián)系人同步請(qǐng)求至服務(wù)器,以供所述服務(wù)器基于接收的所述聯(lián)系人同步請(qǐng)求返回待同步云端聯(lián)系人條目;合并模塊,用于將接收的所述待同步云端聯(lián)系人條目與本地聯(lián)系人條目合并,得到待同步本地聯(lián)系人條目;同步模塊,用于將所述待同步本地聯(lián)系人條目發(fā)送至所述服務(wù)器,以供所述服務(wù)器基于接收的所述待同步本地聯(lián)系人條目更新云端聯(lián)系人條目。本發(fā)明還公開(kāi)了一種聯(lián)系人同步方法。本發(fā)明能夠提高聯(lián)系人同步的效率。
【專(zhuān)利說(shuō)明】
聯(lián)系人同步裝置及方法
技術(shù)領(lǐng)域
[0001] 本發(fā)明設(shè)及網(wǎng)絡(luò)技術(shù)領(lǐng)域,具體設(shè)及一種聯(lián)系人同步裝置及方法。
【背景技術(shù)】
[0002] 現(xiàn)代人的交際面越來(lái)越廣,需要存儲(chǔ)的聯(lián)系人信息也越來(lái)越多。為防止設(shè)備中聯(lián) 系人信息的丟失,各手機(jī)廠(chǎng)商W及軟件廠(chǎng)商紛紛推出了聯(lián)系人信息云同步的功能??蒞理 解的是,同一聯(lián)系人可能有不止一個(gè)號(hào)碼,如辦公室或家庭的聯(lián)系電話(huà)、固話(huà)或手機(jī)號(hào)碼 等,使得設(shè)備中可能有多個(gè)相同或相近的聯(lián)系人姓名存在,而號(hào)碼各不相同,造成聯(lián)系人信 息混亂,查看不便。為此,云端的同步服務(wù)器在進(jìn)行聯(lián)系人信息的同步時(shí),通常會(huì)對(duì)同一聯(lián) 系人的聯(lián)系人條目進(jìn)行合并處理。然而進(jìn)行聯(lián)系人條目的合并處理需要消耗同步服務(wù)器一 定的處理資源,在龐大的用戶(hù)基數(shù)下,往往使得同步服務(wù)器不堪重負(fù),效率嚴(yán)重下降。
【發(fā)明內(nèi)容】
[0003] 本發(fā)明提供一種聯(lián)系人同步裝置及方法,旨在提高聯(lián)系人同步的效率。
[0004] 為實(shí)現(xiàn)上述發(fā)明目的,本發(fā)明提供一種聯(lián)系人同步裝置,所述聯(lián)系人同步裝置包 括:
[0005] 請(qǐng)求模塊,用于發(fā)送聯(lián)系人同步請(qǐng)求至服務(wù)器,W供所述服務(wù)器基于接收的所述 聯(lián)系人同步請(qǐng)求返回待同步云端聯(lián)系人條目;
[0006] 合并模塊,用于將接收的所述待同步云端聯(lián)系人條目與本地聯(lián)系人條目合并,得 到待同步本地聯(lián)系人條目.
[0007] 同步模塊,用于將所述待同步本地聯(lián)系人條目發(fā)送至所述服務(wù)器,W供所述服務(wù) 器基于接收的所述待同步本地聯(lián)系人條目更新云端聯(lián)系人條目。
[000引可選的,所述合并模塊還用于,依次提取所述待同步云端聯(lián)系人條目中的各云端 聯(lián)系人條目;W及
[0009] 基于提取的云端聯(lián)系人條目所攜帶的云端標(biāo)識(shí)獲取提取的云端聯(lián)系人條目對(duì)應(yīng) 的本地標(biāo)識(shí),判斷獲取的本地標(biāo)識(shí)所關(guān)聯(lián)的修改標(biāo)記是否為預(yù)設(shè)值;
[0010] 在獲取的所述本地標(biāo)識(shí)所關(guān)聯(lián)的修改標(biāo)記為預(yù)設(shè)值時(shí),基于提取的云端聯(lián)系人條 目創(chuàng)建新的本地聯(lián)系人條目,并分配新的本地標(biāo)識(shí),將分配的所述本地標(biāo)識(shí)與默認(rèn)云端標(biāo) 識(shí)關(guān)聯(lián),W及將分配的所述本地標(biāo)識(shí)關(guān)聯(lián)的修改標(biāo)記置為預(yù)設(shè)值;
[0011] 在獲取的所述本地標(biāo)識(shí)所關(guān)聯(lián)的修改標(biāo)記不為預(yù)設(shè)值時(shí),將獲取的所述本地標(biāo)識(shí) 關(guān)聯(lián)的本地聯(lián)系人條目替換為提取的云端聯(lián)系人條目;W及
[0012] 在完成待同步云端聯(lián)系人條目的提取操作之后,調(diào)用聯(lián)系人合并功能對(duì)關(guān)聯(lián)修改 標(biāo)記為預(yù)設(shè)值的各本地聯(lián)系人條目進(jìn)行合并操作,并將合并后得到的本地聯(lián)系人條目與未 進(jìn)行合并操作的本地聯(lián)系人條目作為所述待同步本地聯(lián)系人條目。
[0013] 可選的,所述聯(lián)系人同步裝置還包括:
[0014] 更新模塊,用于接收并基于所述服務(wù)器返回的云端標(biāo)識(shí)更新存儲(chǔ)的云端標(biāo)識(shí)和本 地標(biāo)識(shí)的映射關(guān)系,其中,返回的所述云端標(biāo)識(shí)由所述服務(wù)器基于接收的關(guān)聯(lián)默認(rèn)云端標(biāo) 識(shí)的待同步本地聯(lián)系人條目返回。
[0015] 可選的,所述請(qǐng)求模塊還用于,發(fā)送鑒權(quán)信息至所述服務(wù)器,W供所述服務(wù)器基于 接收的所述鑒權(quán)信息進(jìn)行鑒權(quán)操作,并在鑒權(quán)通過(guò)時(shí)返回配置有生存時(shí)間的同步許可;W 及
[0016] 發(fā)送攜帶所述同步許可的聯(lián)系人同步請(qǐng)求至所述服務(wù)器,W供所述服務(wù)器在且僅 在所述同步許可的生存時(shí)間內(nèi)響應(yīng)所述聯(lián)系人同步請(qǐng)求。
[0017] 可選的,所述同步模塊還用于,調(diào)用JS0N數(shù)據(jù)協(xié)議對(duì)所述待同步本地聯(lián)系人條目 進(jìn)行封裝,將得到的封裝數(shù)據(jù)發(fā)送至所述服務(wù)器。
[0018] 此外,為了上述發(fā)明目的,本發(fā)明還提供一種聯(lián)系人同步方法,所述聯(lián)系人同步方 法包括W下步驟:
[0019] 發(fā)送聯(lián)系人同步請(qǐng)求至服務(wù)器,W供所述服務(wù)器基于接收的所述聯(lián)系人同步請(qǐng)求 返回待同步云端聯(lián)系人條目;
[0020] 將接收的所述待同步云端聯(lián)系人條目與本地聯(lián)系人條目合并,得到待同步本地聯(lián) 系人條目;
[0021 ]將所述待同步本地聯(lián)系人條目發(fā)送至所述服務(wù)器,W供所述服務(wù)器基于接收的 所述待同步本地聯(lián)系人條目更新云端聯(lián)系人條目。
[0022] 可選的,所述將接收的所述待同步云端聯(lián)系人條目與本地聯(lián)系人條目合并,得到 待同步本地聯(lián)系人條目的包括:
[0023] 步驟A,依次提取所述待同步云端聯(lián)系人條目中的各云端聯(lián)系人條目;
[0024] 步驟B,基于提取的云端聯(lián)系人條目所攜帶的云端標(biāo)識(shí)獲取提取的云端聯(lián)系人條 目對(duì)應(yīng)的本地標(biāo)識(shí),判斷獲取的本地標(biāo)識(shí)所關(guān)聯(lián)的修改標(biāo)記是否為預(yù)設(shè)值,是則執(zhí)行步驟 C,否則執(zhí)行步驟D;
[0025] 步驟C,基于提取的云端聯(lián)系人條目創(chuàng)建新的本地聯(lián)系人條目,并分配新的本地標(biāo) 識(shí),將分配的所述本地標(biāo)識(shí)與默認(rèn)云端標(biāo)識(shí)關(guān)聯(lián),W及將分配的所述本地標(biāo)識(shí)關(guān)聯(lián)的修改 標(biāo)記置為預(yù)設(shè)值;若當(dāng)前提取的云端聯(lián)系人條目為最后一條則轉(zhuǎn)入執(zhí)行步驟E,否則轉(zhuǎn)入執(zhí) 行步驟A;
[0026] 步驟D,將獲取的所述本地標(biāo)識(shí)關(guān)聯(lián)的本地聯(lián)系人條目替換為提取的云端聯(lián)系人 條目;若當(dāng)前提取的云端聯(lián)系人條目為最后一條則轉(zhuǎn)入執(zhí)行步驟E,否則轉(zhuǎn)入執(zhí)行步驟A;
[0027] 步驟E,調(diào)用聯(lián)系人合并功能對(duì)關(guān)聯(lián)修改標(biāo)記為預(yù)設(shè)值的各本地聯(lián)系人條目進(jìn)行 合并操作,并將合并后得到的本地聯(lián)系人條目與未進(jìn)行合并操作的本地聯(lián)系人條目作為所 述待同步本地聯(lián)系人條目。
[00%]可選的,所述將所述待同步本地聯(lián)系人條目發(fā)送至所述服務(wù)器的步驟之后,還包 括:
[0029] 接收并基于所述服務(wù)器返回的云端標(biāo)識(shí)更新存儲(chǔ)的云端標(biāo)識(shí)和本地標(biāo)識(shí)的映射 關(guān)系,其中,返回的所述云端標(biāo)識(shí)由所述服務(wù)器基于接收的關(guān)聯(lián)默認(rèn)云端標(biāo)識(shí)的待同步本 地聯(lián)系人條目返回。
[0030] 可選的,所述發(fā)送聯(lián)系人同步請(qǐng)求至服務(wù)器的步驟之前,還包括:
[0031 ]發(fā)送鑒權(quán)信息至所述服務(wù)器,W供所述服務(wù)器基于接收的所述鑒權(quán)信息進(jìn)行鑒權(quán) 操作,并在鑒權(quán)通過(guò)時(shí)返回配置有生存時(shí)間的同步許可;
[0032] 所述發(fā)送聯(lián)系人同步請(qǐng)求至服務(wù)器的步驟包括:
[0033] 發(fā)送攜帶所述同步許可的聯(lián)系人同步請(qǐng)求至所述服務(wù)器,W供所述服務(wù)器在且僅 在所述同步許可的生存時(shí)間內(nèi)響應(yīng)所述聯(lián)系人同步請(qǐng)求。
[0034] 可選的,所述將所述待同步本地聯(lián)系人條目發(fā)送至所述服務(wù)器的步驟包括:
[0035] 調(diào)用JS0N數(shù)據(jù)協(xié)議對(duì)所述待同步本地聯(lián)系人條目進(jìn)行封裝,將得到的封裝數(shù)據(jù)發(fā) 送至所述服務(wù)器。
[0036] 本發(fā)明的聯(lián)系人同步裝置及方法,通過(guò)將在同步服務(wù)器集中執(zhí)行的聯(lián)系人條目的 合并處理分散到用戶(hù)側(cè)各個(gè)獨(dú)立的聯(lián)系人同步裝置執(zhí)行,能夠降低同步服務(wù)器的處理壓 力,使得同步服務(wù)器能夠有更多的處理資源提供正常的聯(lián)系人同步服務(wù),提高了聯(lián)系人同 步的效率。
【附圖說(shuō)明】
[0037] 圖1為實(shí)現(xiàn)本發(fā)明各個(gè)實(shí)施例的移動(dòng)終端的硬件結(jié)構(gòu)示意圖;
[0038] 圖2為本發(fā)明聯(lián)系人同步裝置第一實(shí)施例的功能模塊示意圖;
[0039] 圖3為本發(fā)明聯(lián)系人同步裝置第Ξ實(shí)施例的功能模塊示意圖;
[0040] 圖4為本發(fā)明聯(lián)系人同步方法第一實(shí)施例的流程示意圖;
[0041 ]圖5為本發(fā)明聯(lián)系人同步方法第二實(shí)施例的流程示意圖;
[0042] 圖6為本發(fā)明聯(lián)系人同步方法第Ξ實(shí)施例的流程示意圖。
【具體實(shí)施方式】
[0043] 應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用W解釋本發(fā)明,并不用于限定本發(fā)明。 需要說(shuō)明的是,在不沖突的情況下,本發(fā)明中的實(shí)施例及實(shí)施例中的特征可W相互任意結(jié) 厶 1=1 〇
[0044] 現(xiàn)在將參考附圖描述實(shí)現(xiàn)本發(fā)明各個(gè)實(shí)施例的移動(dòng)終端。在后續(xù)的描述中,使用 用于表示元件的諸如"模塊"、"部件"或"單元"的后綴僅為了有利于本發(fā)明的說(shuō)明,其本身 并沒(méi)有特定的意義。因此,"模塊"與"部件"可W混合地使用。
[0045] 移動(dòng)終端可各種形式來(lái)實(shí)施。例如,本發(fā)明中描述的移動(dòng)終端可W包括諸如 移動(dòng)電話(huà)、智能電話(huà)、筆記本電腦、數(shù)字廣播接收器、PDA(個(gè)人數(shù)字助理)、PAD(平板電腦)、 PMP(便攜式多媒體播放器)、導(dǎo)航裝置等,本領(lǐng)域技術(shù)人員將理解的是,除了特別用于移動(dòng) 目的的元件之外,根據(jù)本發(fā)明的實(shí)施方式的構(gòu)造也能夠應(yīng)用于固定類(lèi)型的終端。
[0046] 圖1為實(shí)現(xiàn)本發(fā)明各個(gè)實(shí)施例一個(gè)可選的移動(dòng)終端的硬件結(jié)構(gòu)示意圖。
[0047] 移動(dòng)終端100可W包括無(wú)線(xiàn)通信單元110、A/V(音頻/視頻)輸入單元120、用戶(hù)輸入 單元130、感測(cè)單元140、輸出單元150、存儲(chǔ)器160、接口單元170、控制器180和電源單元190 等等。圖1示出了具有各種組件的移動(dòng)終端,但是應(yīng)理解的是,并不要求實(shí)施所有示出的組 件。可W替代地實(shí)施更多或更少的組件。將在下面詳細(xì)描述移動(dòng)終端的元件。
[0048] 無(wú)線(xiàn)通信單元110通常包括一個(gè)或多個(gè)組件,其允許移動(dòng)終端100與無(wú)線(xiàn)通信系統(tǒng) 或網(wǎng)絡(luò)之間的無(wú)線(xiàn)電通信。例如,無(wú)線(xiàn)通信單元可W包括移動(dòng)通信模塊111和無(wú)線(xiàn)互聯(lián)網(wǎng)模 塊112中的至少一個(gè)。
[0049] 移動(dòng)通信模塊111將無(wú)線(xiàn)電信號(hào)發(fā)送到基站(例如,接入點(diǎn)、節(jié)點(diǎn)B等等)、外部終端 W及服務(wù)器中的至少一個(gè)和/或從其接收無(wú)線(xiàn)電信號(hào)。運(yùn)樣的無(wú)線(xiàn)電信號(hào)可W包括語(yǔ)音通 話(huà)信號(hào)、視頻通話(huà)信號(hào)、或者根據(jù)文本和/或多媒體消息發(fā)送和/或接收的各種類(lèi)型的數(shù)據(jù)。
[0050] 無(wú)線(xiàn)互聯(lián)網(wǎng)模塊112支持移動(dòng)終端的無(wú)線(xiàn)互聯(lián)網(wǎng)接入。該模塊可W內(nèi)部或外部地 禪接到終端。該模塊所設(shè)及的無(wú)線(xiàn)互聯(lián)網(wǎng)接入技術(shù)可W包括WLAN(無(wú)線(xiàn)LAN)(Wi-Fi)、W化ro (無(wú)線(xiàn)寬帶)、Wimax(全球微波互聯(lián)接入)、服DPA(高速下行鏈路分組接入)等等。
[0051] A/V輸入單元120用于接收音頻或視頻信號(hào)。A/V輸入單元120可W包括相機(jī)121和 麥克風(fēng)122,相機(jī)121對(duì)在視頻捕獲模式或圖像捕獲模式中由圖像捕獲裝置獲得的靜態(tài)圖片 或視頻的圖像數(shù)據(jù)進(jìn)行處理。處理后的圖像帖可W顯示在顯示單元151上。經(jīng)相機(jī)121處理 后的圖像帖可W存儲(chǔ)在存儲(chǔ)器160(或其它存儲(chǔ)介質(zhì))中或者經(jīng)由無(wú)線(xiàn)通信單元110進(jìn)行發(fā) 送,可W根據(jù)移動(dòng)終端的構(gòu)造提供兩個(gè)或更多相機(jī)121。麥克風(fēng)122可W在電話(huà)通話(huà)模式、記 錄模式、語(yǔ)音識(shí)別模式等等運(yùn)行模式中經(jīng)由麥克風(fēng)接收聲音(音頻數(shù)據(jù)),并且能夠?qū)⑦\(yùn)樣 的聲音處理為音頻數(shù)據(jù)。處理后的音頻(語(yǔ)音)數(shù)據(jù)可W在電話(huà)通話(huà)模式的情況下轉(zhuǎn)換為可 經(jīng)由移動(dòng)通信模塊112發(fā)送到移動(dòng)通信基站的格式輸出。麥克風(fēng)122可W實(shí)施各種類(lèi)型的噪 聲消除(或抑制)算法W消除(或抑制)在接收和發(fā)送音頻信號(hào)的過(guò)程中產(chǎn)生的噪聲或者干 擾。
[0052] 用戶(hù)輸入單元130可W根據(jù)用戶(hù)輸入的命令生成鍵輸入數(shù)據(jù)W控制移動(dòng)終端的各 種操作。用戶(hù)輸入單元130允許用戶(hù)輸入各種類(lèi)型的信息,并且可W包括鍵盤(pán)、鍋?zhàn)衅?、觸摸 板(例如,檢測(cè)由于被接觸而導(dǎo)致的電阻、壓力、電容等等的變化的觸敏組件)、滾輪、搖桿 等等。特別地,當(dāng)觸摸板W層的形式疊加在顯示單元151上時(shí),可W形成觸摸屏。
[0053] 感測(cè)單元140檢測(cè)移動(dòng)終端100的當(dāng)前狀態(tài),(例如,移動(dòng)終端100的打開(kāi)或關(guān)閉狀 態(tài))、移動(dòng)終端100的位置、用戶(hù)對(duì)于移動(dòng)終端100的接觸(即,觸摸輸入)的有無(wú)、移動(dòng)終端 100的取向、移動(dòng)終端100的加速或減速移動(dòng)和方向等等,并且生成用于控制移動(dòng)終端100的 操作的命令或信號(hào)。例如,當(dāng)移動(dòng)終端100實(shí)施為滑動(dòng)型移動(dòng)電話(huà)時(shí),感測(cè)單元140可W感測(cè) 該滑動(dòng)型電話(huà)是打開(kāi)還是關(guān)閉。另外,感測(cè)單元140能夠檢測(cè)電源單元190是否提供電力或 者接口單元170是否與外部裝置禪接。
[0054] 接口單元170用作至少一個(gè)外部裝置與移動(dòng)終端100連接可W通過(guò)的接口。例如, 外部裝置可W包括有線(xiàn)或無(wú)線(xiàn)頭戴式耳機(jī)端口、外部電源(或電池充電器)端口、有線(xiàn)或無(wú) 線(xiàn)數(shù)據(jù)端口、存儲(chǔ)卡端口、用于連接具有識(shí)別模塊的裝置的端口、音頻輸入/輸出(I/O)端 口、視頻I/O端口、耳機(jī)端口等等。識(shí)別模塊可W是存儲(chǔ)用于驗(yàn)證用戶(hù)使用移動(dòng)終端100的各 種信息并且可W包括用戶(hù)識(shí)別模塊(UIM)、客戶(hù)識(shí)別模塊(SIM)、通用客戶(hù)識(shí)別模塊(USIM) 等等。另外,具有識(shí)別模塊的裝置(下面稱(chēng)為"識(shí)別裝置")可W采取智能卡的形式,因此,識(shí) 別裝置可W經(jīng)由端口或其它連接裝置與移動(dòng)終端100連接。接口單元170可W用于接收來(lái)自 外部裝置的輸入(例如,數(shù)據(jù)信息、電力等等)并且將接收到的輸入傳輸?shù)揭苿?dòng)終端100內(nèi)的 一個(gè)或多個(gè)元件或者可W用于在移動(dòng)終端和外部裝置之間傳輸數(shù)據(jù)。
[0055] 另外,當(dāng)移動(dòng)終端100與外部底座連接時(shí),接口單元170可W用作允許通過(guò)其將電 力從底座提供到移動(dòng)終端100的路徑或者可W用作允許從底座輸入的各種命令信號(hào)通過(guò)其 傳輸?shù)揭苿?dòng)終端的路徑。從底座輸入的各種命令信號(hào)或電力可W用作用于識(shí)別移動(dòng)終端是 否準(zhǔn)確地安裝在底座上的信號(hào)。輸出單元150被構(gòu)造為W視覺(jué)、音頻和/或觸覺(jué)方式提供輸 出信號(hào)(例如,音頻信號(hào)、視頻信號(hào)、警報(bào)信號(hào)、振動(dòng)信號(hào)等等)。輸出單元150可W包括顯示 單元151、音頻輸出模塊152等。
[0056] 顯示單元151可W顯示在移動(dòng)終端100中處理的信息。例如,當(dāng)移動(dòng)終端100處于電 話(huà)通話(huà)模式時(shí),顯示單元151可W顯示與通話(huà)或其它通信(例如,文本消息收發(fā)、多媒體文件 下載等等)相關(guān)的用戶(hù)界面化I)或圖形用戶(hù)界面(GUI)。當(dāng)移動(dòng)終端100處于視頻通話(huà)模式 或者圖像捕獲模式時(shí),顯示單元151可W顯示捕獲的圖像和/或接收的圖像、顯示出視頻或 圖像W及相關(guān)功能的UI或GUI等等。
[0057] 同時(shí),當(dāng)顯示單元151和觸摸板W層的形式彼此疊加 W形成觸摸屏?xí)r,顯示單元 151可W用作輸入裝置和輸出裝置。顯示單元151可W包括液晶顯示器化CD)、薄膜晶體管 LCD(TFT-LCD)、有機(jī)發(fā)光二極管(0LED)顯示器、柔性顯示器、Ξ維(3D)顯示器等等中的至少 一種。運(yùn)些顯示器中的一些可W被構(gòu)造為透明狀W允許用戶(hù)從外部觀(guān)看,運(yùn)可W稱(chēng)為透明 顯示器,典型的透明顯示器可W例如為T(mén)0LED(透明有機(jī)發(fā)光二極管)顯示器等等。根據(jù)特定 想要的實(shí)施方式,移動(dòng)終端100可W包括兩個(gè)或更多顯示單元(或其它顯示裝置),例如,移 動(dòng)終端可W包括外部顯示單元(未示出)和內(nèi)部顯示單元(未示出)。觸摸屏可用于檢測(cè)觸摸 輸入壓力W及觸摸輸入位置和觸摸輸入面積。
[005引音頻輸出模塊152可W在移動(dòng)終端處于呼叫信號(hào)接收模式、通話(huà)模式、記錄模式、 語(yǔ)音識(shí)別模式、廣播接收模式等等模式下時(shí),將無(wú)線(xiàn)通信單元110接收的或者在存儲(chǔ)器160 中存儲(chǔ)的音頻數(shù)據(jù)轉(zhuǎn)換音頻信號(hào)并且輸出為聲音。而且,音頻輸出模塊152可W提供與移動(dòng) 終端100執(zhí)行的特定功能相關(guān)的音頻輸出(例如,呼叫信號(hào)接收聲音、消息接收聲音等等)。 音頻輸出模塊152可W包括揚(yáng)聲器、蜂鳴器等等。
[0059] 存儲(chǔ)器160可W存儲(chǔ)由控制器180執(zhí)行的處理和控制操作的軟件程序等等,例如, 可W存儲(chǔ)實(shí)現(xiàn)本發(fā)明聯(lián)系人同步方法的軟件程序,或者可W暫時(shí)地存儲(chǔ)己經(jīng)輸出或?qū)⒁?出的數(shù)據(jù)(例如,電話(huà)簿、消息、靜態(tài)圖像、視頻等等)。而且,存儲(chǔ)器160可W存儲(chǔ)關(guān)于當(dāng)觸摸 施加到觸摸屏?xí)r輸出的各種方式的振動(dòng)和音頻信號(hào)的數(shù)據(jù)。
[0060] 存儲(chǔ)器160可W包括至少一種類(lèi)型的存儲(chǔ)介質(zhì),所述存儲(chǔ)介質(zhì)包括閃存、硬盤(pán)、多 媒體卡、卡型存儲(chǔ)器(例如,SD或DX存儲(chǔ)器等等)、隨機(jī)訪(fǎng)問(wèn)存儲(chǔ)器(RAM)、靜態(tài)隨機(jī)訪(fǎng)問(wèn)存儲(chǔ) 器(SRAM)、只讀存儲(chǔ)器(ROM)、電可擦除可編程只讀存儲(chǔ)器化EPROM)、可編程只讀存儲(chǔ)器 (PROM)、磁性存儲(chǔ)器、磁盤(pán)、光盤(pán)等等。而且,移動(dòng)終端100可W與通過(guò)網(wǎng)絡(luò)連接執(zhí)行存儲(chǔ)器 160的存儲(chǔ)功能的網(wǎng)絡(luò)存儲(chǔ)裝置協(xié)作。
[0061] 控制器180通??刂埔苿?dòng)終端的總體操作。例如,控制器180執(zhí)行與語(yǔ)音通話(huà)、數(shù)據(jù) 通信、視頻通話(huà)等等相關(guān)的控制和處理。控制器180可W執(zhí)行模式識(shí)別處理,W將在觸摸屏 上執(zhí)行的手寫(xiě)輸入或者圖片繪制輸入識(shí)別為字符或圖像。
[0062] 電源單元190在控制器180的控制下接收外部電力或內(nèi)部電力并且提供操作各元 件和組件所需的適當(dāng)?shù)碾娏Α?br>[0063] 運(yùn)里描述的各種實(shí)施方式可使用例如計(jì)算機(jī)軟件、硬件或其任何組合的計(jì)算 機(jī)可讀介質(zhì)來(lái)實(shí)施。對(duì)于硬件實(shí)施,運(yùn)里描述的實(shí)施方式可W通過(guò)使用特定用途集成電路 (ASIC)、數(shù)字信號(hào)處理器(DSP)、數(shù)字信號(hào)處理裝置(DSPD)、可編程邏輯裝置(PLD)、現(xiàn)場(chǎng)可 編程口陣列(FPGA)、處理器、控制器、微控制器、微處理器、被設(shè)計(jì)為執(zhí)行運(yùn)里描述的功能的 電子單元中的至少一種來(lái)實(shí)施,在一些情況下,運(yùn)樣的實(shí)施方式可W在控制器180中實(shí)施。 對(duì)于軟件實(shí)施,諸如過(guò)程或功能的實(shí)施方式可w與允許執(zhí)行至少一種功能或操作的單獨(dú)的 軟件模塊來(lái)實(shí)施。軟件代碼可W由W任何適當(dāng)?shù)木幊陶Z(yǔ)言編寫(xiě)的軟件應(yīng)用程序(或程序)來(lái) 實(shí)施,軟件代碼可W存儲(chǔ)在存儲(chǔ)器160中并且由控制器180執(zhí)行。
[0064] 基于上述移動(dòng)終端硬件結(jié)構(gòu),提出本發(fā)明聯(lián)系人同步裝置的各個(gè)實(shí)施例。
[0065] 參照?qǐng)D2,在本發(fā)明聯(lián)系人同步裝置的第一實(shí)施例中,該聯(lián)系人同步裝置包括:
[0066] 請(qǐng)求模塊10,用于發(fā)送聯(lián)系人同步請(qǐng)求至服務(wù)器,W供服務(wù)器基于接收的聯(lián)系人 同步請(qǐng)求返回待同步云端聯(lián)系人條目;
[0067] 需要說(shuō)明的是,本實(shí)施例提供的聯(lián)系人同步裝置基于移動(dòng)終端運(yùn)行,具體可內(nèi)置 于移動(dòng)終端運(yùn)行,或外置于移動(dòng)終端運(yùn)行,亦或是通過(guò)軟件模塊的形式實(shí)現(xiàn)。W下W聯(lián)系人 同步裝置內(nèi)置于移動(dòng)終端為例進(jìn)行說(shuō)明。
[0068] 本實(shí)施例中,請(qǐng)求模塊10執(zhí)行發(fā)送聯(lián)系人同步請(qǐng)求的操作可W是在其所在的移動(dòng) 終端到達(dá)預(yù)設(shè)的同步時(shí)間點(diǎn)時(shí)自動(dòng)觸發(fā),也可W在其所在移動(dòng)終端接收到用戶(hù)的同步操作 時(shí)觸發(fā),或者是其他滿(mǎn)足觸發(fā)條件的情況觸發(fā)。
[0069] 進(jìn)一步的,在本實(shí)施例中,為保證聯(lián)系人條目W及服務(wù)器的安全,請(qǐng)求模塊10還用 于,發(fā)送鑒權(quán)信息至服務(wù)器,W供服務(wù)器基于接收的鑒權(quán)信息進(jìn)行鑒權(quán)操作,并在鑒權(quán)通過(guò) 時(shí)返回配置有生存時(shí)間的同步許可;W及
[0070] 發(fā)送攜帶接收的同步許可的聯(lián)系人同步請(qǐng)求至服務(wù)器,W供服務(wù)器在且僅在同步 許可的生存時(shí)間內(nèi)響應(yīng)接收的聯(lián)系人同步請(qǐng)求。
[0071] 其中,請(qǐng)求模塊10發(fā)送的鑒權(quán)信息包括其所在移動(dòng)終端的歸屬用戶(hù)的用戶(hù)標(biāo)識(shí)及 密碼。服務(wù)器通過(guò)該用戶(hù)標(biāo)識(shí)及密碼驗(yàn)證用戶(hù)是否合法,是則鑒權(quán)通過(guò)。
[0072] 請(qǐng)求模塊10發(fā)送的聯(lián)系人同步請(qǐng)求如表1所示。
[0073]
[0074] 表 1
[00巧]服務(wù)器存儲(chǔ)記錄結(jié)構(gòu)如表2所示。
[0076]
[0077] 表 2
[0078] 在本實(shí)施例中,服務(wù)器在接收到請(qǐng)求模塊10發(fā)送的聯(lián)系人同步請(qǐng)求之后,首先驗(yàn) 證Synctoken(同步許可)是否有效,即是否超過(guò)生存時(shí)間;在Synctoken有效時(shí),通過(guò)鑒權(quán)操 作時(shí)產(chǎn)生的用戶(hù)標(biāo)識(shí)和Synctoken的映射關(guān)系,查找目標(biāo)用戶(hù)的數(shù)據(jù)集中所有Version〉 LastSyncVersion的記錄,將查找到的各記錄中的云端聯(lián)系人條目作為待同步云端聯(lián)系人 條目。
[0079] 合并模塊20,用于將接收的待同步云端聯(lián)系人條目與本地聯(lián)系人條目合并,得到 待同步本地聯(lián)系人條目.
[0080] 合并模塊20當(dāng)其所在移動(dòng)終端接收到服務(wù)器返回的待同步云端聯(lián)系人條目時(shí),將 接收的待同步云端聯(lián)系人條目與其所在移動(dòng)終端的本地聯(lián)系人條目合并,具體可調(diào)用其所 在移動(dòng)終端的聯(lián)系人合并功能完成待同步云端聯(lián)系人條目與本地聯(lián)系人條目的合并操作, 并將完成合并操作之后其所在移動(dòng)終端所有的本地聯(lián)系人條目作為待同步本地聯(lián)系人條 目。
[0081] 同步模塊30,用于將得到的待同步本地聯(lián)系人條目發(fā)送至服務(wù)器,W供服務(wù)器基 于接收的待同步本地聯(lián)系人條目更新云端聯(lián)系人條目。
[0082] 本實(shí)施例中,同步模塊30在合并模塊20完成待同步云端聯(lián)系人條目與本地聯(lián)系人 條目的合并操作,并得到待同步本地聯(lián)系人條目之后,將得到的待同步本地聯(lián)系人條目發(fā) 送至服務(wù)器。
[0083] 服務(wù)器在接收到同步模塊30發(fā)送的待同步本地聯(lián)系人條目之后,基于接收的待同 步本地聯(lián)系人條目更新對(duì)應(yīng)的云端聯(lián)系人條目,W使得服務(wù)器存儲(chǔ)的云端聯(lián)系人條目與移 動(dòng)終端存儲(chǔ)的本地聯(lián)系人條目保持同步。
[0084] 進(jìn)一步的,在本實(shí)施例中,為增加聯(lián)系人條目的支持類(lèi)型,W避免額外的特殊處 理,同步模塊30還用于,調(diào)用JS0N數(shù)據(jù)協(xié)議對(duì)待同步本地聯(lián)系人條目進(jìn)行封裝,將得到的封 裝數(shù)據(jù)發(fā)送至服務(wù)器。
[0085] 相應(yīng)的,服務(wù)器在接收到同步模塊30發(fā)送的封裝數(shù)據(jù)之后,調(diào)用JS0N數(shù)據(jù)協(xié)議解 封裝接收的封裝數(shù)據(jù)即可獲得待同步本地聯(lián)系人條目。
[00化]需要說(shuō)明的是,JS0N(化vaScript Object No化tion)是一種輕量級(jí)的數(shù)據(jù)交換格 式,它基于ECMAScript的一個(gè)子集。JS0N采用完全獨(dú)立于語(yǔ)言的文本格式,但是也使用了類(lèi) 似于C語(yǔ)言(包括C、C++、C#、Java JavaScript、Pe;rl、Python等)家族的習(xí)慣。運(yùn)些特性使 JS0N成為理想的數(shù)據(jù)交換語(yǔ)言。易于人閱讀和編寫(xiě),同時(shí)也易于機(jī)器解析和生成,能夠提升 網(wǎng)絡(luò)傳輸速率。
[0087] 本發(fā)明通過(guò)將在同步服務(wù)器集中執(zhí)行的聯(lián)系人條目的合并處理分散到用戶(hù)側(cè)各 個(gè)獨(dú)立的聯(lián)系人同步裝置執(zhí)行,能夠降低同步服務(wù)器的處理壓力,使得同步服務(wù)器能夠有 更多的處理資源提供正常的聯(lián)系人同步服務(wù),提高了聯(lián)系人同步的效率。
[0088] 進(jìn)一步的,提出了本發(fā)明聯(lián)系人同步裝置的第二實(shí)施例,本實(shí)施例W第一實(shí)施例 為基礎(chǔ),增加了對(duì)合并模塊20實(shí)現(xiàn)的詳細(xì)說(shuō)明,繼續(xù)參照?qǐng)D2,該聯(lián)系人同步裝置包括:
[0089] 請(qǐng)求模塊10,用于發(fā)送聯(lián)系人同步請(qǐng)求至服務(wù)器,W供服務(wù)器基于接收的聯(lián)系人 同步請(qǐng)求返回待同步云端聯(lián)系人條目;
[0090] 合并模塊20,用于依次提取接收的待同步云端聯(lián)系人條目中的各云端聯(lián)系人條 目;w及
[0091] 基于提取的云端聯(lián)系人條目所攜帶的云端標(biāo)識(shí)獲取提取的云端聯(lián)系人條目對(duì)應(yīng) 的本地標(biāo)識(shí),判斷獲取的本地標(biāo)識(shí)所關(guān)聯(lián)的修改標(biāo)記是否為預(yù)設(shè)值;
[0092] 在獲取的本地標(biāo)識(shí)所關(guān)聯(lián)的修改標(biāo)記為預(yù)設(shè)值時(shí),基于提取的云端聯(lián)系人條目創(chuàng) 建新的本地聯(lián)系人條目,并分配新的本地標(biāo)識(shí),將分配的本地標(biāo)識(shí)與默認(rèn)云端標(biāo)識(shí)關(guān)聯(lián),W 及將分配的本地標(biāo)識(shí)關(guān)聯(lián)的修改標(biāo)記置為預(yù)設(shè)值;
[0093] 在獲取的本地標(biāo)識(shí)所關(guān)聯(lián)的修改標(biāo)記不為預(yù)設(shè)值時(shí),將獲取的本地標(biāo)識(shí)關(guān)聯(lián)的本 地聯(lián)系人條目替換為提取的云端聯(lián)系人條目;W及
[0094] 在完成待同步云端聯(lián)系人條目的提取操作之后,調(diào)用聯(lián)系人合并功能對(duì)關(guān)聯(lián)修改 標(biāo)記為預(yù)設(shè)值的各本地聯(lián)系人條目進(jìn)行合并操作,并將合并后得到的本地聯(lián)系人條目與未 進(jìn)行合并操作的本地聯(lián)系人條目作為待同步本地聯(lián)系人條目;
[00M]同步模塊30,用于將得到的待同步本地聯(lián)系人條目發(fā)送至服務(wù)器,W供服務(wù)器基 于接收的待同步本地聯(lián)系人條目更新云端聯(lián)系人條目。
[0096] 在本實(shí)施例中,移動(dòng)終端存儲(chǔ)記錄結(jié)構(gòu)如表3所示。
[0097]
[0098] 表 3
[0099] 需要說(shuō)明的是,移動(dòng)終端存儲(chǔ)的各本地聯(lián)系人條目均關(guān)聯(lián)有對(duì)應(yīng)的存儲(chǔ)記錄。
[0100] 在本實(shí)施例中,服務(wù)器基于請(qǐng)求模塊10發(fā)送的聯(lián)系人同步請(qǐng)求的響應(yīng)的結(jié)構(gòu)如表 4所示。
[0101]
[0102]
[010;3]表 4
[0104] 其中,ServerData的結(jié)構(gòu)如表5所示。
[0105]
[0106] 表5
[0107] 其中,Serverltem列表的結(jié)構(gòu)如表6所示。
[010 引
[0109] 表6
[0110] 本實(shí)施例中,合并模塊20當(dāng)其所在移動(dòng)終端接收到服務(wù)器基于聯(lián)系人同步請(qǐng)求返 回的響應(yīng)之后,依次處理響應(yīng)中的各Server Item(包括云端標(biāo)識(shí)和對(duì)應(yīng)的云端聯(lián)系人條 目),具體的,合并模塊20依次提取接收的待同步云端聯(lián)系人條目中的各云端聯(lián)系人條目; 在每次提取到云端聯(lián)系人條目時(shí),若提取的云端聯(lián)系人條目的刪除標(biāo)記(表6中的 Deleted)為true,則基于提取的云端聯(lián)系人條目所攜帶的云端標(biāo)識(shí)(表6中的ServerlD),W 及其所在的移動(dòng)終端存儲(chǔ)的云端標(biāo)識(shí)和本地標(biāo)識(shí)的映射關(guān)系(如表3所示),刪除對(duì)應(yīng)的存 儲(chǔ)記錄W及本地聯(lián)系人條目,否則判斷對(duì)應(yīng)的本地標(biāo)識(shí)所關(guān)聯(lián)的修改標(biāo)記(表1中的Dbty) 是否為true(預(yù)設(shè)值);
[0111] 在對(duì)應(yīng)的本地標(biāo)識(shí)所關(guān)聯(lián)的修改標(biāo)記為true時(shí),合并模塊20基于提取的云端聯(lián)系 人條目創(chuàng)建新的本地聯(lián)系人條目,并分配新的本地標(biāo)識(shí),將新的本地標(biāo)識(shí)與默認(rèn)云端標(biāo)識(shí) (為0)關(guān)聯(lián),W及將新的本地標(biāo)識(shí)的修改標(biāo)記置為true;
[0112] 在對(duì)應(yīng)的本地標(biāo)識(shí)所關(guān)聯(lián)的修改標(biāo)記為false時(shí),合并模塊20將對(duì)應(yīng)的本地標(biāo)識(shí) 所關(guān)聯(lián)的本地聯(lián)系人條目替換為提取的云端聯(lián)系人條目;W及
[0113] 在完成待同步云端聯(lián)系人條目的提取操作之后(即各個(gè)Serverltem均被提取并判 斷),合并模塊20調(diào)用其所在移動(dòng)終端的聯(lián)系人合并功能對(duì)當(dāng)前修改標(biāo)記為true的各本地 聯(lián)系人條目進(jìn)行合并操作,并將合并后得到的本地聯(lián)系人條目與未進(jìn)行合并操作的本地聯(lián) 系人條目作為待同步本地聯(lián)系人條目。
[0114] 其中,在本地不存在與提取的云端聯(lián)系人條目所攜帶的云端標(biāo)識(shí)關(guān)聯(lián)的本地標(biāo)識(shí) 時(shí),合并模塊20直接調(diào)用其所在移動(dòng)終端的聯(lián)系人合并功能對(duì)該云端聯(lián)系人條目進(jìn)行合并 操作,W將該云端聯(lián)系人條目合并至可能的本地聯(lián)系人條目中,若合并成功則將合并后的 本地聯(lián)系人條目的修改標(biāo)記置為true;若合并失敗則基于提取的云端聯(lián)系人條目創(chuàng)建新的 本地聯(lián)系人條目,并分配新的本地標(biāo)識(shí),將新的本地標(biāo)識(shí)與默認(rèn)云端標(biāo)識(shí)關(guān)聯(lián),W及將新的 本地標(biāo)識(shí)的修改標(biāo)記置為化1S e。
[0115] 進(jìn)一步的,參照?qǐng)D3,提出了本發(fā)明聯(lián)系人同步裝置的第Ξ實(shí)施例,本實(shí)施例W第 二實(shí)施例為基礎(chǔ),包括:
[0116] 請(qǐng)求模塊10,用于發(fā)送聯(lián)系人同步請(qǐng)求至服務(wù)器,W供服務(wù)器基于接收的聯(lián)系人 同步請(qǐng)求返回待同步云端聯(lián)系人條目;
[0117] 合并模塊20,用于依次提取接收的待同步云端聯(lián)系人條目中的各云端聯(lián)系人條 目;W及
[0118] 基于提取的云端聯(lián)系人條目所攜帶的云端標(biāo)識(shí)獲取提取的云端聯(lián)系人條目對(duì)應(yīng) 的本地標(biāo)識(shí),判斷獲取的本地標(biāo)識(shí)所關(guān)聯(lián)的修改標(biāo)記是否為預(yù)設(shè)值;
[0119] 在獲取的本地標(biāo)識(shí)所關(guān)聯(lián)的修改標(biāo)記為預(yù)設(shè)值時(shí),基于提取的云端聯(lián)系人條目創(chuàng) 建新的本地聯(lián)系人條目,并分配新的本地標(biāo)識(shí),將分配的本地標(biāo)識(shí)與默認(rèn)云端標(biāo)識(shí)關(guān)聯(lián),W 及將分配的本地標(biāo)識(shí)關(guān)聯(lián)的修改標(biāo)記置為預(yù)設(shè)值;
[0120] 在獲取的本地標(biāo)識(shí)所關(guān)聯(lián)的修改標(biāo)記不為預(yù)設(shè)值時(shí),將獲取的本地標(biāo)識(shí)關(guān)聯(lián)的本 地聯(lián)系人條目替換為提取的云端聯(lián)系人條目;W及
[0121] 在完成待同步云端聯(lián)系人條目的提取操作之后,調(diào)用聯(lián)系人合并功能對(duì)關(guān)聯(lián)修改 標(biāo)記為預(yù)設(shè)值的各本地聯(lián)系人條目進(jìn)行合并操作,并將合并后得到的本地聯(lián)系人條目與未 進(jìn)行合并操作的本地聯(lián)系人條目作為待同步本地聯(lián)系人條目;
[0122] 同步模塊30,用于將得到的待同步本地聯(lián)系人條目發(fā)送至服務(wù)器,W供服務(wù)器基 于接收的待同步本地聯(lián)系人條目更新云端聯(lián)系人條目;
[0123] 更新模塊40,用于接收并基于服務(wù)器返回的云端標(biāo)識(shí)更新存儲(chǔ)的云端標(biāo)識(shí)和本地 標(biāo)識(shí)的映射關(guān)系,其中,服務(wù)器返回的云端標(biāo)識(shí)由服務(wù)器基于接收的關(guān)聯(lián)默認(rèn)云端標(biāo)識(shí)的 待同步本地聯(lián)系人條目返回。
[0124] 需要說(shuō)明的是,本實(shí)施例與第二實(shí)施例的區(qū)別在于,本實(shí)施例增加了更新模塊40, W下對(duì)更新模塊40的實(shí)現(xiàn)進(jìn)行說(shuō)明。
[0125] 在本實(shí)施例中,合并模塊20在完成合并操作之后,將LastSyncVersion為 ServerVersion,并記錄響應(yīng)中的 SessionID。
[01%]同步模塊30發(fā)送上推請(qǐng)求至服務(wù)器,上推請(qǐng)求的結(jié)構(gòu)如表7所示。
[0127]
[012引表7
[0129] 其中,Clien社)a化的結(jié)構(gòu)如表8所示。
[0130]
[0131] 表8
[0132] 其中,Clientitem列表的結(jié)構(gòu)如表9所示。
[0133]
[0134] 表9
[0135] 服務(wù)器在接收到同步模塊30發(fā)送的上推請(qǐng)求之后,驗(yàn)證上推請(qǐng)求中的SessionID 和LastSyncVersion,如果SessionID無(wú)效(SessionID超過(guò)生存時(shí)間,失效)或 LastSyncVersiorKServerVersion,則返回指示信息至同步模塊30所在的移動(dòng)終端,指示請(qǐng) 求模塊10重新發(fā)起聯(lián)系人同步請(qǐng)求;在驗(yàn)證通過(guò)時(shí),逐個(gè)處理Clientitem,具體的,服務(wù)器 依次提取待同步本地聯(lián)系人條目中的各本地聯(lián)系人條目;在每次提取到本地聯(lián)系人條目 時(shí),若提取的本地聯(lián)系人條目的刪除標(biāo)記(表9中的Deleted)為化ue,則基于提取的本地聯(lián) 系人條目所攜帶的云端標(biāo)識(shí)(表9中的ServerlD),W及服務(wù)器存儲(chǔ)的云端標(biāo)識(shí)和云端聯(lián)系 人條目的映射關(guān)系(如表2所示),刪除對(duì)應(yīng)的云端聯(lián)系人條目,否則判斷提取的本地聯(lián)系人 條目所攜帶的云端標(biāo)識(shí)是否為默認(rèn)云端標(biāo)識(shí);
[0136] 在提取的本地聯(lián)系人條目所攜帶的云端標(biāo)識(shí)為默認(rèn)云端標(biāo)識(shí)時(shí),基于提取的本地 聯(lián)系人條目創(chuàng)建新的云端聯(lián)系人條目,并分配新的云端標(biāo)識(shí),將新的云端標(biāo)識(shí)與提取的本 地聯(lián)系人條目所攜帶的本地標(biāo)識(shí)關(guān)聯(lián);
[0137] 在提取的本地聯(lián)系人條目所攜帶的云端標(biāo)識(shí)不為默認(rèn)云端標(biāo)識(shí)時(shí),將提取的本地 聯(lián)系人條目所攜帶的云端標(biāo)識(shí)所關(guān)聯(lián)的云端聯(lián)系人條目替換為提取的本地聯(lián)系人條目,并 將該記錄的¥6^;[0]1字段更新為561^61'¥6^;[0]1+1;
[0138] 在完成待同步本地聯(lián)系人條目的提取操作之后,服務(wù)器將ServerVersion更新為 ServerVersion+1。
[0139] 其中,在提取的本地聯(lián)系人條目所攜帶的云端標(biāo)識(shí)不為默認(rèn)云端標(biāo)識(shí),且不存在 與提取的本地聯(lián)系人條目所攜帶的云端標(biāo)識(shí)關(guān)聯(lián)的云端聯(lián)系人條目時(shí),服務(wù)器基于提取的 本地聯(lián)系人條目創(chuàng)建新的云端聯(lián)系人條目,并分配新的云端標(biāo)識(shí),將新的云端標(biāo)識(shí)與提取 的本地聯(lián)系人條目所攜帶的本地標(biāo)識(shí)關(guān)聯(lián)。
[0140] 服務(wù)器在完成更新操作之后,返回新的云端標(biāo)識(shí)與本地標(biāo)識(shí)的映射關(guān)系至更新模 塊40所在的移動(dòng)終端,供更新模塊40更新其所在移動(dòng)終端存儲(chǔ)的云端標(biāo)識(shí)與本地標(biāo)識(shí)的映 射關(guān)系,實(shí)現(xiàn)服務(wù)側(cè)映射關(guān)系和用戶(hù)側(cè)映射關(guān)系的同步。
[0141] 進(jìn)一步的,本發(fā)明還提供了一種聯(lián)系人同步方法,結(jié)合參照?qǐng)D2和圖4,在本發(fā)明聯(lián) 系人同步方法的第一實(shí)施例中,該聯(lián)系人同步方法包括:
[0142] 步驟SIO,發(fā)送聯(lián)系人同步請(qǐng)求至服務(wù)器,W供服務(wù)器基于接收的聯(lián)系人同步請(qǐng)求 返回待同步云端聯(lián)系人條目;
[0143] 需要說(shuō)明的是,本實(shí)施例提供的聯(lián)系人同步方法由圖2所示的聯(lián)系人同步裝置執(zhí) 行,該聯(lián)系人同步裝置基于移動(dòng)終端運(yùn)行,具體可內(nèi)置于移動(dòng)終端運(yùn)行,或外置于移動(dòng)終端 運(yùn)行,亦或是通過(guò)軟件模塊的形式實(shí)現(xiàn)。W下W聯(lián)系人同步裝置內(nèi)置于移動(dòng)終端為例進(jìn)行 說(shuō)明。
[0144] 本實(shí)施例中,請(qǐng)求模塊10執(zhí)行發(fā)送聯(lián)系人同步請(qǐng)求的操作可W是在其所在的移動(dòng) 終端到達(dá)預(yù)設(shè)的同步時(shí)間點(diǎn)時(shí)自動(dòng)觸發(fā),也可W在其所在移動(dòng)終端接收到用戶(hù)的同步操作 時(shí)觸發(fā),或者是其他滿(mǎn)足觸發(fā)條件的情況觸發(fā)。
[0145] 進(jìn)一步的,在本實(shí)施例中,為保證聯(lián)系人條目W及服務(wù)器的安全,步驟S10之前還 包括:
[0146] 發(fā)送鑒權(quán)信息至服務(wù)器,W供服務(wù)器基于接收的鑒權(quán)信息進(jìn)行鑒權(quán)操作,并在鑒 權(quán)通過(guò)時(shí)返回配置有生存時(shí)間的同步許可;
[0147] 步驟S10包括:
[0148] 發(fā)送攜帶同步許可的聯(lián)系人同步請(qǐng)求至服務(wù)器,W供服務(wù)器在且僅在同步許可的 生存時(shí)間內(nèi)響應(yīng)接收的聯(lián)系人同步請(qǐng)求。
[0149] 具體的,請(qǐng)求模塊10發(fā)送的鑒權(quán)信息包括其所在移動(dòng)終端的歸屬用戶(hù)的用戶(hù)標(biāo)識(shí) 及密碼。服務(wù)器通過(guò)該用戶(hù)標(biāo)識(shí)及密碼驗(yàn)證用戶(hù)是否合法,是則鑒權(quán)通過(guò)。
[0150] 結(jié)合參照表1和表2,在本實(shí)施例中,服務(wù)器在接收到請(qǐng)求模塊10發(fā)送的聯(lián)系人同 步請(qǐng)求之后,首先驗(yàn)證Synctoken (同步許可)是否有效,即是否超過(guò)生存時(shí)間;在Synctoken 有效時(shí),通過(guò)鑒權(quán)操作時(shí)產(chǎn)生的用戶(hù)標(biāo)識(shí)和Synctoken的映射關(guān)系,查找目標(biāo)用戶(hù)的數(shù)據(jù)集 中所有乂6'3;[0]1〉1^曰3157]1(3¥6'3;[0]1的記錄,將查找到的各記錄中的云端聯(lián)系人條目作為待 同步云端聯(lián)系人條目。
[0151] 步驟S20,將接收的待同步云端聯(lián)系人條目與本地聯(lián)系人條目合并,得到待同步本 地聯(lián)系人條目;
[0152] 步驟S30,將得到的待同步本地聯(lián)系人條目發(fā)送至服務(wù)器,W供服務(wù)器基于接收的 待同步本地聯(lián)系人條目更新云端聯(lián)系人條目。
[0153] 本實(shí)施例中,同步模塊30在合并模塊20完成待同步云端聯(lián)系人條目與本地聯(lián)系人 條目的合并操作,并得到待同步本地聯(lián)系人條目之后,將得到的待同步本地聯(lián)系人條目發(fā) 送至服務(wù)器。
[0154] 服務(wù)器在接收到同步模塊30發(fā)送的待同步本地聯(lián)系人條目之后,基于接收的待同 步本地聯(lián)系人條目更新對(duì)應(yīng)的云端聯(lián)系人條目,W使得服務(wù)器存儲(chǔ)的云端聯(lián)系人條目與移 動(dòng)終端存儲(chǔ)的本地聯(lián)系人條目保持同步。
[0155] 進(jìn)一步的,在本實(shí)施例中,為增加聯(lián)系人條目的支持類(lèi)型,W避免額外的特殊處 理,步驟S30包括:
[0156] 調(diào)用JS0N數(shù)據(jù)協(xié)議對(duì)待同步本地聯(lián)系人條目進(jìn)行封裝,將得到的封裝數(shù)據(jù)發(fā)送至 服務(wù)器。
[0157] 本實(shí)施例中,同步模塊30在執(zhí)行待同步本地聯(lián)系人條目的發(fā)送操作時(shí),調(diào)用其所 在移動(dòng)終端的JS0N數(shù)據(jù)協(xié)議對(duì)待同步本地聯(lián)系人條目進(jìn)行封裝,并將得到的封裝數(shù)據(jù)發(fā)送 至服務(wù)器。
[0158] 相應(yīng)的,服務(wù)器在接收到同步模塊30發(fā)送的封裝數(shù)據(jù)之后,調(diào)用JS0N數(shù)據(jù)協(xié)議解 封裝接收的封裝數(shù)據(jù)即可獲得待同步本地聯(lián)系人條目。
[0159] 需要說(shuō)明的是,JSON(JavaSc;ript Object No1:ation)是一種輕量級(jí)的數(shù)據(jù)交換 格式,它基于ECMAScript的一個(gè)子集。JS0N采用完全獨(dú)立于語(yǔ)言的文本格式,但是也使用了 類(lèi)似于C語(yǔ)言(包括〔、〔++、〔#、化¥日、化¥日5沈191:、?61'1、?71:11〇]1等)家族的習(xí)慣。運(yùn)些特性使 JS0N成為理想的數(shù)據(jù)交換語(yǔ)言。易于人閱讀和編寫(xiě),同時(shí)也易于機(jī)器解析和生成,能夠提升 網(wǎng)絡(luò)傳輸速率。
[0160] 本發(fā)明通過(guò)將在同步服務(wù)器集中執(zhí)行的聯(lián)系人條目的合并處理分散到用戶(hù)側(cè)各 個(gè)獨(dú)立的聯(lián)系人同步裝置執(zhí)行,能夠降低同步服務(wù)器的處理壓力,使得同步服務(wù)器能夠有 更多的處理資源提供正常的聯(lián)系人同步服務(wù),提高了聯(lián)系人同步的效率。
[0161] 進(jìn)一步的,提出了本發(fā)明聯(lián)系人同步方法的第二實(shí)施例,本實(shí)施例W第一實(shí)施例 為基礎(chǔ),增加了對(duì)待同步云端聯(lián)系人條目與本地聯(lián)系人條目的合并處理步驟的詳細(xì)說(shuō)明, 參照?qǐng)D5,該聯(lián)系人同步方法包括:
[0162] 步驟S10,發(fā)送聯(lián)系人同步請(qǐng)求至服務(wù)器,W供服務(wù)器基于接收的聯(lián)系人同步請(qǐng)求 返回待同步云端聯(lián)系人條目;
[0163] 步驟S201,依次提取接收的待同步云端聯(lián)系人條目中的各云端聯(lián)系人條目;
[0164] 步驟S202,基于提取的云端聯(lián)系人條目所攜帶的云端標(biāo)識(shí)獲取提取的云端聯(lián)系人 條目對(duì)應(yīng)的本地標(biāo)識(shí),判斷獲取的本地標(biāo)識(shí)所關(guān)聯(lián)的修改標(biāo)記是否為預(yù)設(shè)值,是則執(zhí)行步 驟S203,否則執(zhí)行步驟S204;
[0165] 步驟S203,基于提取的云端聯(lián)系人條目創(chuàng)建新的本地聯(lián)系人條目,并分配新的本 地標(biāo)識(shí),將分配的本地標(biāo)識(shí)與默認(rèn)云端標(biāo)識(shí)關(guān)聯(lián),W及將分配的本地標(biāo)識(shí)關(guān)聯(lián)的修改標(biāo)記 置為預(yù)設(shè)值;若當(dāng)前提取的云端聯(lián)系人條目為最后一條則轉(zhuǎn)入執(zhí)行步驟S205,否則轉(zhuǎn)入執(zhí) 行步驟201;
[0166] 步驟S204,將獲取的本地標(biāo)識(shí)所關(guān)聯(lián)的本地聯(lián)系人條目替換為提取的云端聯(lián)系人 條目;若當(dāng)前提取的云端聯(lián)系人條目為最后一條則轉(zhuǎn)入執(zhí)行步驟S205,否則轉(zhuǎn)入執(zhí)行步驟 201;
[0167] 步驟S205,調(diào)用聯(lián)系人合并功能對(duì)關(guān)聯(lián)修改標(biāo)記為預(yù)設(shè)值的各本地聯(lián)系人條目進(jìn) 行合并操作,并將合并后得到的本地聯(lián)系人條目與未進(jìn)行合并操作的本地聯(lián)系人條目作為 待同步本地聯(lián)系人條目.
[0168] 步驟S30,將得到的待同步本地聯(lián)系人條目發(fā)送至服務(wù)器,W供服務(wù)器基于接收 的待同步本地聯(lián)系人條目更新云端聯(lián)系人條目。
[0169] 在本實(shí)施例中,移動(dòng)終端存儲(chǔ)記錄結(jié)構(gòu)如表3所示。其中,移動(dòng)終端存儲(chǔ)的各本地 聯(lián)系人條目均關(guān)聯(lián)有對(duì)應(yīng)的存儲(chǔ)記錄。
[0170] 結(jié)合參照表4至表6,合并模塊20當(dāng)其所在移動(dòng)終端接收到服務(wù)器基于聯(lián)系人同步 請(qǐng)求返回的響應(yīng)之后,依次處理響應(yīng)中的各Serverltem(包括云端標(biāo)識(shí)和對(duì)應(yīng)的云端聯(lián)系 人條目),具體的,合并模塊20依次提取接收的待同步云端聯(lián)系人條目中的各云端聯(lián)系人條 目;在每次提取到云端聯(lián)系人條目時(shí),若提取的云端聯(lián)系人條目的刪除標(biāo)記(表6中的 Deleted)為true,則基于提取的云端聯(lián)系人條目所攜帶的云端標(biāo)識(shí)(表6中的ServerlD),W 及其所在的移動(dòng)終端存儲(chǔ)的云端標(biāo)識(shí)和本地標(biāo)識(shí)的映射關(guān)系(如表3所示),刪除對(duì)應(yīng)的存 儲(chǔ)記錄W及本地聯(lián)系人條目,否則判斷對(duì)應(yīng)的本地標(biāo)識(shí)所關(guān)聯(lián)的修改標(biāo)記(表1中的Dbty) 是否為true(預(yù)設(shè)值);
[0171] 在對(duì)應(yīng)的本地標(biāo)識(shí)所關(guān)聯(lián)的修改標(biāo)記為true時(shí),合并模塊20基于提取的云端聯(lián)系 人條目創(chuàng)建新的本地聯(lián)系人條目,并分配新的本地標(biāo)識(shí),將新的本地標(biāo)識(shí)與默認(rèn)云端標(biāo)識(shí) (為0)關(guān)聯(lián),W及將新的本地標(biāo)識(shí)的修改標(biāo)記置為true;
[0172] 在對(duì)應(yīng)的本地標(biāo)識(shí)所關(guān)聯(lián)的修改標(biāo)記為false時(shí),合并模塊20將對(duì)應(yīng)的本地標(biāo)識(shí) 所關(guān)聯(lián)的本地聯(lián)系人條目替換為提取的云端聯(lián)系人條目;W及
[0173] 在完成待同步云端聯(lián)系人條目的提取操作之后(即各個(gè)Serverltem均被提取并判 斷),合并模塊20調(diào)用其所在移動(dòng)終端的聯(lián)系人合并功能對(duì)當(dāng)前修改標(biāo)記為true的各本地 聯(lián)系人條目進(jìn)行合并操作,并將合并后得到的本地聯(lián)系人條目與未進(jìn)行合并操作的本地聯(lián) 系人條目作為待同步本地聯(lián)系人條目。
[0174] 其中,在本地不存在與提取的云端聯(lián)系人條目所攜帶的云端標(biāo)識(shí)關(guān)聯(lián)的本地標(biāo)識(shí) 時(shí),合并模塊20直接調(diào)用其所在移動(dòng)終端的聯(lián)系人合并功能對(duì)該云端聯(lián)系人條目進(jìn)行合并 操作,W將該云端聯(lián)系人條目合并至可能的本地聯(lián)系人條目中,若合并成功則將合并后的 本地聯(lián)系人條目的修改標(biāo)記置為true;若合并失敗則基于提取的云端聯(lián)系人條目創(chuàng)建新的 本地聯(lián)系人條目,并分配新的本地標(biāo)識(shí),將新的本地標(biāo)識(shí)與默認(rèn)云端標(biāo)識(shí)關(guān)聯(lián),W及將新的 本地標(biāo)識(shí)的修改標(biāo)記置為化1S e。
[0175] 進(jìn)一步的,參照?qǐng)D6,提出了本發(fā)明聯(lián)系人同步方法的第Ξ實(shí)施例,本實(shí)施例W第 二實(shí)施例為基礎(chǔ),包括:
[0176] 步驟S10,發(fā)送聯(lián)系人同步請(qǐng)求至服務(wù)器,W供服務(wù)器基于接收的聯(lián)系人同步請(qǐng)求 返回待同步云端聯(lián)系人條目;
[0177] 步驟S201,依次提取接收的待同步云端聯(lián)系人條目中的各云端聯(lián)系人條目;
[0178] 步驟S202,基于提取的云端聯(lián)系人條目所攜帶的云端標(biāo)識(shí)獲取提取的云端聯(lián)系人 條目對(duì)應(yīng)的本地標(biāo)識(shí),判斷獲取的本地標(biāo)識(shí)所關(guān)聯(lián)的修改標(biāo)記是否為預(yù)設(shè)值,是則執(zhí)行步 驟S203,否則執(zhí)行步驟S204;
[0179] 步驟S203,基于提取的云端聯(lián)系人條目創(chuàng)建新的本地聯(lián)系人條目,并分配新的本 地標(biāo)識(shí),將分配的本地標(biāo)識(shí)與默認(rèn)云端標(biāo)識(shí)關(guān)聯(lián),W及將分配的本地標(biāo)識(shí)關(guān)聯(lián)的修改標(biāo)記 置為預(yù)設(shè)值;若當(dāng)前提取的云端聯(lián)系人條目為最后一條則轉(zhuǎn)入執(zhí)行步驟S205,否則轉(zhuǎn)入執(zhí) 行步驟201;
[0180] 步驟S204,將獲取的本地標(biāo)識(shí)所關(guān)聯(lián)的本地聯(lián)系人條目替換為提取的云端聯(lián)系人 條目;若當(dāng)前提取的云端聯(lián)系人條目為最后一條則轉(zhuǎn)入執(zhí)行步驟S205,否則轉(zhuǎn)入執(zhí)行步驟 201;
[0181] 步驟S205,調(diào)用聯(lián)系人合并功能對(duì)關(guān)聯(lián)修改標(biāo)記為預(yù)設(shè)值的各本地聯(lián)系人條目進(jìn) 行合并操作,并將合并后得到的本地聯(lián)系人條目與未進(jìn)行合并操作的本地聯(lián)系人條目作為 待同步本地聯(lián)系人條目.
[0182] 步驟S30,將得到的待同步本地聯(lián)系人條目發(fā)送至服務(wù)器,W供服務(wù)器基于接收的 待同步本地聯(lián)系人條目更新云端聯(lián)系人條目.
[0183] 步驟S40,接收并基于服務(wù)器返回的云端標(biāo)識(shí)更新存儲(chǔ)的云端標(biāo)識(shí)和本地標(biāo)識(shí)的 映射關(guān)系,其中,服務(wù)器返回的云端標(biāo)識(shí)由服務(wù)器基于接收的關(guān)聯(lián)默認(rèn)云端標(biāo)識(shí)的待同步 本地聯(lián)系人條目返回。
[0184] 需要說(shuō)明的是,本實(shí)施例與第二實(shí)施例的區(qū)別在于,參照?qǐng)D3,本實(shí)施例中聯(lián)系人 同步裝置增加了更新模塊40,W下對(duì)更新模塊40的實(shí)現(xiàn)進(jìn)行說(shuō)明。
[0185] 在本實(shí)施例中,合并模塊20在完成合并操作之后,將LastSyncVersion為 ServerVersion,并記錄響應(yīng)中的 SessionID。
[0186] 結(jié)合參照表7至表9,同步模塊30發(fā)送上推請(qǐng)求至服務(wù)器;服務(wù)器在接收到同步模 塊30發(fā)送的上推請(qǐng)求之后,驗(yàn)證上推請(qǐng)求中的SessionID和LastSyncVersion,如果 86 33;[0]110無(wú)效(56 33;[0]110超過(guò)生存時(shí)間,失效)或1^日3157]1。¥6'3;[0]1<561^61'¥6'3;[0]1,則 返回指示信息至同步模塊30所在的移動(dòng)終端,指示請(qǐng)求模塊10重新發(fā)起聯(lián)系人同步請(qǐng)求; 在驗(yàn)證通過(guò)時(shí),逐個(gè)處理Clientitem(如表9所示),具體的,服務(wù)器依次提取待同步本地聯(lián) 系人條目中的各本地聯(lián)系人條目;在每次提取到本地聯(lián)系人條目時(shí),若提取的本地聯(lián)系人 條目的刪除標(biāo)記(表9中的Deleted)為true,則基于提取的本地聯(lián)系人條目所攜帶的云端標(biāo) 識(shí)(表9中的ServerID),W及服務(wù)器存儲(chǔ)的云端標(biāo)識(shí)和云端聯(lián)系人條目的映射關(guān)系(如表2 所示),刪除對(duì)應(yīng)的云端聯(lián)系人條目,否則判斷提取的本地聯(lián)系人條目所攜帶的云端標(biāo)識(shí)是 否為默認(rèn)云端標(biāo)識(shí);
[0187] 在提取的本地聯(lián)系人條目所攜帶的云端標(biāo)識(shí)為默認(rèn)云端標(biāo)識(shí)時(shí),基于提取的本地 聯(lián)系人條目創(chuàng)建新的云端聯(lián)系人條目,并分配新的云端標(biāo)識(shí),將新的云端標(biāo)識(shí)與提取的本 地聯(lián)系人條目所攜帶的本地標(biāo)識(shí)關(guān)聯(lián);
[0188] 在提取的本地聯(lián)系人條目所攜帶的云端標(biāo)識(shí)不為默認(rèn)云端標(biāo)識(shí)時(shí),將提取的本地 聯(lián)系人條目所攜帶的云端標(biāo)識(shí)所關(guān)聯(lián)的云端聯(lián)系人條目替換為提取的本地聯(lián)系人條目,并 將該記錄的¥6^;[0]1字段更新為561^61'¥6^;[0]1+1;
[0189] 在完成待同步本地聯(lián)系人條目的提取操作之后,服務(wù)器將ServerVersion更新為 ServerVersion+1。
[0190] 其中,在提取的本地聯(lián)系人條目所攜帶的云端標(biāo)識(shí)不為默認(rèn)云端標(biāo)識(shí),且不存在 與提取的本地聯(lián)系人條目所攜帶的云端標(biāo)識(shí)關(guān)聯(lián)的云端聯(lián)系人條目時(shí),服務(wù)器基于提取的 本地聯(lián)系人條目創(chuàng)建新的云端聯(lián)系人條目,并分配新的云端標(biāo)識(shí),將新的云端標(biāo)識(shí)與提取 的本地聯(lián)系人條目所攜帶的本地標(biāo)識(shí)關(guān)聯(lián)。
[0191] 服務(wù)器在完成更新操作之后,返回新的云端標(biāo)識(shí)與本地標(biāo)識(shí)的映射關(guān)系至更新模 塊40所在的移動(dòng)終端,供更新模塊40更新其所在移動(dòng)終端存儲(chǔ)的云端標(biāo)識(shí)與本地標(biāo)識(shí)的映 射關(guān)系,實(shí)現(xiàn)服務(wù)側(cè)映射關(guān)系和用戶(hù)側(cè)映射關(guān)系的同步。
[0192] 需要說(shuō)明的是,在本文中,術(shù)語(yǔ)"包括"、"包含"或者其任何其它變體意在涵蓋非排 他性的包含,從而使得包括一系列要素的過(guò)程、方法、物品或者裝置不僅包括那些要素,而 且還包括沒(méi)有明確列出的其它要素,或者是還包括為運(yùn)種過(guò)程、方法、物品或者裝置所固有 的要素。在沒(méi)有更多限制的情況下,由語(yǔ)句"包括一個(gè)……"限定的要素,并不排除在包括該 要素的過(guò)程、方法、物品或者裝置中還存在另外的相同要素。
[0193] 上述本發(fā)明實(shí)施例序號(hào)僅僅為了描述,不代表實(shí)施例的優(yōu)劣。
[0194] 通過(guò)W上的實(shí)施方式的描述,本領(lǐng)域的技術(shù)人員可W清楚地了解到上述實(shí)施例方 法可借助軟件加必需的通用硬件平臺(tái)的方式來(lái)實(shí)現(xiàn),當(dāng)然也可W通過(guò)硬件,但很多情況下 前者是更佳的實(shí)施方式。基于運(yùn)樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說(shuō)對(duì)現(xiàn)有技術(shù)做 出貢獻(xiàn)的部分可軟件產(chǎn)品的形式體現(xiàn)出來(lái),該計(jì)算機(jī)軟件產(chǎn)品存儲(chǔ)在一個(gè)存儲(chǔ)介質(zhì) (如ROM/RAM、磁碟、光盤(pán))中,包括若干指令用W使得一臺(tái)終端設(shè)備(可W是手機(jī),計(jì)算機(jī),月良 務(wù)器,空調(diào)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例所述的方法。
[0195]出于解釋的目的,前面的描述使用了特定的術(shù)語(yǔ),W提供對(duì)本發(fā)明的透徹理解。然 而,對(duì)本領(lǐng)域的技術(shù)人員來(lái)說(shuō)顯而易見(jiàn)的是,為了實(shí)踐本發(fā)明并不需要具體的細(xì)節(jié)。本發(fā)明 的具體實(shí)施例的前述描述是為了圖示和說(shuō)明的目的而呈現(xiàn)。它們并不意在詳盡的或?qū)⒈景l(fā) 明限于所公開(kāi)的準(zhǔn)確形式。鑒于上面的教義,許多修改和變化是可能的。為了最好地解釋本 發(fā)明的原理及其實(shí)際應(yīng)用而示出并描述了運(yùn)些實(shí)施例,從而使本領(lǐng)域的其他技術(shù)人員能夠 最好地利用本發(fā)明和具有適于預(yù)期的特定使用的各種修改的各種實(shí)施例。意在本發(fā)明的范 圍由隨后的權(quán)利要求和其等同物來(lái)限定。
【主權(quán)項(xiàng)】
1. 一種聯(lián)系人同步裝置,其特征在于,所述聯(lián)系人同步裝置包括: 請(qǐng)求模塊,用于發(fā)送聯(lián)系人同步請(qǐng)求至服務(wù)器,以供所述服務(wù)器基于接收的所述聯(lián)系 人同步請(qǐng)求返回待同步云端聯(lián)系人條目; 合并模塊,用于將接收的所述待同步云端聯(lián)系人條目與本地聯(lián)系人條目合并,得到待 同步本地聯(lián)系人條目; 同步模塊,用于將所述待同步本地聯(lián)系人條目發(fā)送至所述服務(wù)器,以供所述服務(wù)器基 于接收的所述待同步本地聯(lián)系人條目更新云端聯(lián)系人條目。2. 根據(jù)權(quán)利要求1所述的聯(lián)系人同步裝置,其特征在于,所述合并模塊還用于,依次提 取所述待同步云端聯(lián)系人條目中的各云端聯(lián)系人條目;以及 基于提取的云端聯(lián)系人條目所攜帶的云端標(biāo)識(shí)獲取提取的云端聯(lián)系人條目對(duì)應(yīng)的本 地標(biāo)識(shí),判斷獲取的本地標(biāo)識(shí)所關(guān)聯(lián)的修改標(biāo)記是否為預(yù)設(shè)值; 在獲取的所述本地標(biāo)識(shí)所關(guān)聯(lián)的修改標(biāo)記為預(yù)設(shè)值時(shí),基于提取的云端聯(lián)系人條目創(chuàng) 建新的本地聯(lián)系人條目,并分配新的本地標(biāo)識(shí),將分配的所述本地標(biāo)識(shí)與默認(rèn)云端標(biāo)識(shí)關(guān) 聯(lián),以及將分配的所述本地標(biāo)識(shí)關(guān)聯(lián)的修改標(biāo)記置為預(yù)設(shè)值; 在獲取的所述本地標(biāo)識(shí)所關(guān)聯(lián)的修改標(biāo)記不為預(yù)設(shè)值時(shí),將獲取的所述本地標(biāo)識(shí)關(guān)聯(lián) 的本地聯(lián)系人條目替換為提取的云端聯(lián)系人條目;以及 在完成待同步云端聯(lián)系人條目的提取操作之后,調(diào)用聯(lián)系人合并功能對(duì)關(guān)聯(lián)修改標(biāo)記 為預(yù)設(shè)值的各本地聯(lián)系人條目進(jìn)行合并操作,并將合并后得到的本地聯(lián)系人條目與未進(jìn)行 合并操作的本地聯(lián)系人條目作為所述待同步本地聯(lián)系人條目。3. 根據(jù)權(quán)利要求2所述的聯(lián)系人同步裝置,其特征在于,所述聯(lián)系人同步裝置還包括: 更新模塊,用于接收并基于所述服務(wù)器返回的云端標(biāo)識(shí)更新存儲(chǔ)的云端標(biāo)識(shí)和本地標(biāo) 識(shí)的映射關(guān)系,其中,返回的所述云端標(biāo)識(shí)由所述服務(wù)器基于接收的關(guān)聯(lián)默認(rèn)云端標(biāo)識(shí)的 待同步本地聯(lián)系人條目返回。4. 根據(jù)權(quán)利要求1-3任一項(xiàng)所述的聯(lián)系人同步裝置,其特征在于,所述請(qǐng)求模塊還用 于,發(fā)送鑒權(quán)信息至所述服務(wù)器,以供所述服務(wù)器基于接收的所述鑒權(quán)信息進(jìn)行鑒權(quán)操作, 并在鑒權(quán)通過(guò)時(shí)返回配置有生存時(shí)間的同步許可;以及 發(fā)送攜帶所述同步許可的聯(lián)系人同步請(qǐng)求至所述服務(wù)器,以供所述服務(wù)器在且僅在所 述同步許可的生存時(shí)間內(nèi)響應(yīng)所述聯(lián)系人同步請(qǐng)求。5. 根據(jù)權(quán)利要求1-3任一項(xiàng)所述的聯(lián)系人同步裝置,其特征在于,所述同步模塊還用 于,調(diào)用JSON數(shù)據(jù)協(xié)議對(duì)所述待同步本地聯(lián)系人條目進(jìn)行封裝,將得到的封裝數(shù)據(jù)發(fā)送至 所述服務(wù)器。6. -種聯(lián)系人同步方法,其特征在于,所述聯(lián)系人同步方法包括以下步驟: 發(fā)送聯(lián)系人同步請(qǐng)求至服務(wù)器,以供所述服務(wù)器基于接收的所述聯(lián)系人同步請(qǐng)求返回 待同步云端聯(lián)系人條目; 將接收的所述待同步云端聯(lián)系人條目與本地聯(lián)系人條目合并,得到待同步本地聯(lián)系人 條目; 將所述待同步本地聯(lián)系人條目發(fā)送至所述服務(wù)器,以供所述服務(wù)器基于接收的所述待 同步本地聯(lián)系人條目更新云端聯(lián)系人條目。7. 根據(jù)權(quán)利要求6所述的聯(lián)系人同步方法,其特征在于,所述將接收的所述待同步云端 聯(lián)系人條目與本地聯(lián)系人條目合并,得到待同步本地聯(lián)系人條目的包括: 步驟A,依次提取所述待同步云端聯(lián)系人條目中的各云端聯(lián)系人條目; 步驟B,基于提取的云端聯(lián)系人條目所攜帶的云端標(biāo)識(shí)獲取提取的云端聯(lián)系人條目對(duì) 應(yīng)的本地標(biāo)識(shí),判斷獲取的本地標(biāo)識(shí)所關(guān)聯(lián)的修改標(biāo)記是否為預(yù)設(shè)值,是則執(zhí)行步驟C,否 則執(zhí)行步驟D; 步驟C,基于提取的云端聯(lián)系人條目創(chuàng)建新的本地聯(lián)系人條目,并分配新的本地標(biāo)識(shí), 將分配的所述本地標(biāo)識(shí)與默認(rèn)云端標(biāo)識(shí)關(guān)聯(lián),以及將分配的所述本地標(biāo)識(shí)關(guān)聯(lián)的修改標(biāo)記 置為預(yù)設(shè)值;若當(dāng)前提取的云端聯(lián)系人條目為最后一條則轉(zhuǎn)入執(zhí)行步驟E,否則轉(zhuǎn)入執(zhí)行步 驟A; 步驟D,將獲取的所述本地標(biāo)識(shí)關(guān)聯(lián)的本地聯(lián)系人條目替換為提取的云端聯(lián)系人條目; 若當(dāng)前提取的云端聯(lián)系人條目為最后一條則轉(zhuǎn)入執(zhí)行步驟E,否則轉(zhuǎn)入執(zhí)行步驟A; 步驟E,調(diào)用聯(lián)系人合并功能對(duì)關(guān)聯(lián)修改標(biāo)記為預(yù)設(shè)值的各本地聯(lián)系人條目進(jìn)行合并 操作,并將合并后得到的本地聯(lián)系人條目與未進(jìn)行合并操作的本地聯(lián)系人條目作為所述待 同步本地聯(lián)系人條目。8. 根據(jù)權(quán)利要求7所述的聯(lián)系人同步方法,其特征在于,所述將所述待同步本地聯(lián)系人 條目發(fā)送至所述服務(wù)器的步驟之后,還包括: 接收并基于所述服務(wù)器返回的云端標(biāo)識(shí)更新存儲(chǔ)的云端標(biāo)識(shí)和本地標(biāo)識(shí)的映射關(guān)系, 其中,返回的所述云端標(biāo)識(shí)由所述服務(wù)器基于接收的關(guān)聯(lián)默認(rèn)云端標(biāo)識(shí)的待同步本地聯(lián)系 人條目返回。9. 根據(jù)權(quán)利要求6-8任一項(xiàng)所述的聯(lián)系人同步方法,其特征在于,所述發(fā)送聯(lián)系人同步 請(qǐng)求至服務(wù)器的步驟之前,還包括: 發(fā)送鑒權(quán)信息至所述服務(wù)器,以供所述服務(wù)器基于接收的所述鑒權(quán)信息進(jìn)行鑒權(quán)操 作,并在鑒權(quán)通過(guò)時(shí)返回配置有生存時(shí)間的同步許可; 所述發(fā)送聯(lián)系人同步請(qǐng)求至服務(wù)器的步驟包括: 發(fā)送攜帶所述同步許可的聯(lián)系人同步請(qǐng)求至所述服務(wù)器,以供所述服務(wù)器在且僅在所 述同步許可的生存時(shí)間內(nèi)響應(yīng)所述聯(lián)系人同步請(qǐng)求。10. 根據(jù)權(quán)利要求6-8任一項(xiàng)所述的聯(lián)系人同步方法,其特征在于,所述將所述待同步 本地聯(lián)系人條目發(fā)送至所述服務(wù)器的步驟包括: 調(diào)用JSON數(shù)據(jù)協(xié)議對(duì)所述待同步本地聯(lián)系人條目進(jìn)行封裝,將得到的封裝數(shù)據(jù)發(fā)送至 所述服務(wù)器。
【文檔編號(hào)】H04L29/12GK105872124SQ201610188845
【公開(kāi)日】2016年8月17日
【申請(qǐng)日】2016年3月29日
【發(fā)明人】程文星
【申請(qǐng)人】努比亞技術(shù)有限公司