本發(fā)明涉及軟件開發(fā)技術(shù)領(lǐng)域,尤其涉及一種數(shù)據(jù)搜索方法及裝置。
背景技術(shù):
隨著科技的進(jìn)步,手機(jī)、平板電腦等終端設(shè)備逐漸普及,這些終端設(shè)備上的各種app(應(yīng)用軟件)也越來越豐富。為了方便用戶使用,終端設(shè)備的操作系統(tǒng)以及很多app都提供了搜索功能。
然而,當(dāng)用戶想搜索某app內(nèi)的數(shù)據(jù)時(shí),由于app內(nèi)的數(shù)據(jù)通常是該app所私有的,屬于特殊的格式,而操作系統(tǒng)所提供的搜索功能一般只能搜索終端設(shè)備存儲(chǔ)介質(zhì)中的普通文件,無法搜索app內(nèi)的私有數(shù)據(jù),所述用戶只能先啟動(dòng)app,然后再在該app內(nèi)進(jìn)行選擇搜索功能的操作,才能進(jìn)行搜索,步驟較為繁瑣,操作效率不高。
技術(shù)實(shí)現(xiàn)要素:
為克服現(xiàn)有技術(shù)中存在的問題,本發(fā)明提供一種數(shù)據(jù)搜索方法及裝置,以實(shí)現(xiàn)無需進(jìn)入app即可快速搜索app內(nèi)的數(shù)據(jù)。
根據(jù)本發(fā)明實(shí)施例的第一方面,提供一種數(shù)據(jù)搜索方法,所述方法包括:
為應(yīng)用軟件內(nèi)部的數(shù)據(jù)創(chuàng)建數(shù)據(jù)索引,其中每條數(shù)據(jù)索引均包含標(biāo)識(shí)及關(guān)鍵字;
將所述數(shù)據(jù)索引導(dǎo)入操作系統(tǒng);
接收用戶在所述操作系統(tǒng)的搜索框中所輸入的檢索詞;
根據(jù)數(shù)據(jù)索引中的關(guān)鍵字,獲取并顯示與所述檢索詞相匹配的數(shù)據(jù)索引;
當(dāng)所述用戶選擇了其中一條數(shù)據(jù)索引后,啟動(dòng)指定應(yīng)用軟件,其中所述指定應(yīng)用軟件為被選擇的數(shù)據(jù)索引所屬的應(yīng)用軟件;
將被選擇的數(shù)據(jù)索引的標(biāo)識(shí)傳遞給所述指定應(yīng)用軟件,以使所述指定軟件根據(jù)所述標(biāo)識(shí)為所述用戶顯示所述指定應(yīng)用軟件內(nèi)部對(duì)應(yīng)的數(shù)據(jù)。
可選的,所述指定軟件根據(jù)所述標(biāo)識(shí)為所述用戶顯示所述指定應(yīng)用軟件內(nèi)部的相應(yīng)數(shù)據(jù),包括:
根據(jù)所述標(biāo)識(shí)從所述指定軟件的數(shù)據(jù)索引列表中查找數(shù)據(jù)索引;
根據(jù)查找到的數(shù)據(jù)索引獲取所述指定應(yīng)用軟件內(nèi)部對(duì)應(yīng)的數(shù)據(jù);
在所述指定應(yīng)用軟件中為所述用戶顯示所述對(duì)應(yīng)的數(shù)據(jù)。
可選的,每條數(shù)據(jù)索引還包括以下項(xiàng)目中的一種或多種:
標(biāo)題,內(nèi)容描述,圖片信息,電話號(hào)碼,電子郵件地址。
可選的,當(dāng)所述數(shù)據(jù)索引中包括電話號(hào)碼或電子郵件地址時(shí),所述數(shù)據(jù)索引還相應(yīng)包括:
直接撥打所述電話號(hào)碼或給所述電話號(hào)碼發(fā)送短信的功能按鈕,或者,給所述電子郵件地址發(fā)送郵件的功能按鈕,以實(shí)現(xiàn)在不啟動(dòng)所述指定軟件的情況下直接撥打所述電話號(hào)碼或給所述電話號(hào)碼發(fā)送短信或給所述電子郵件地址發(fā)送郵件。
可選的,所述操作系統(tǒng)為ios,所述方法使用ios中的spotlight特性實(shí)現(xiàn)。
根據(jù)本發(fā)明實(shí)施例的第二方面,提供一種數(shù)據(jù)搜索裝置,所述裝置包括:
數(shù)據(jù)索引創(chuàng)建及導(dǎo)入模塊,用于為應(yīng)用軟件內(nèi)部的數(shù)據(jù)創(chuàng)建數(shù)據(jù)索引,并將所述數(shù)據(jù)索引傳入操作系統(tǒng),其中每條數(shù)據(jù)索引均包含標(biāo)識(shí)及關(guān)鍵字;
檢索詞接收模塊,用于接收用戶在所述操作系統(tǒng)的搜索框中所輸入的檢索詞;
數(shù)據(jù)索引顯示模塊,用于根據(jù)數(shù)據(jù)索引中的關(guān)鍵字,獲取并顯示與所述檢索詞相匹配的數(shù)據(jù)索引;
軟件啟動(dòng)模塊,用于當(dāng)所述用戶選擇了其中一條數(shù)據(jù)索引后,啟動(dòng)指定應(yīng)用軟件,其中所述指定應(yīng)用軟件為被選擇的數(shù)據(jù)索引所屬的應(yīng)用軟件;
數(shù)據(jù)顯示模塊,用于將被選擇的數(shù)據(jù)索引的標(biāo)識(shí)傳遞給所述指定應(yīng)用軟件,以使所述指定軟件根據(jù)所述標(biāo)識(shí)為所述用戶顯示所述指定應(yīng)用軟件內(nèi)部對(duì)應(yīng)的數(shù)據(jù)。
可選的,所述指定軟件根據(jù)所述標(biāo)識(shí)為所述用戶顯示所述指定應(yīng)用軟件內(nèi)部的相應(yīng)數(shù)據(jù),包括:
根據(jù)所述標(biāo)識(shí)從所述指定軟件的數(shù)據(jù)索引列表中查找數(shù)據(jù)索引;
根據(jù)查找到的數(shù)據(jù)索引獲取所述指定應(yīng)用軟件內(nèi)部對(duì)應(yīng)的數(shù)據(jù);
在所述指定應(yīng)用軟件中為所述用戶顯示所述對(duì)應(yīng)的數(shù)據(jù)。
可選的,每條數(shù)據(jù)索引還包括以下項(xiàng)目中的一種或多種:
標(biāo)題,內(nèi)容描述,圖片信息,電話號(hào)碼,電子郵件地址。
可選的,當(dāng)所述數(shù)據(jù)索引中包括電話號(hào)碼或電子郵件地址時(shí),所述數(shù)據(jù)索引還相應(yīng)包括:
直接撥打所述電話號(hào)碼或給所述電話號(hào)碼發(fā)送短信的功能按鈕,或者,給所述電子郵件地址發(fā)送郵件的功能按鈕,以實(shí)現(xiàn)在不啟動(dòng)所述指定軟件的情況下直接撥打所述電話號(hào)碼或給所述電話號(hào)碼發(fā)送短信或給所述電子郵件地址發(fā)送郵件。
可選的,所述操作系統(tǒng)為ios,所述裝置使用ios中的spotlight特性實(shí)現(xiàn)。
本發(fā)明的實(shí)施例提供的技術(shù)方案可以包括以下有益效果:
在本發(fā)明方案中為app的內(nèi)部數(shù)據(jù)創(chuàng)建了數(shù)據(jù)索引,并將數(shù)據(jù)索引通知給操作系統(tǒng),這樣用戶不需要啟動(dòng)app,只需使用操作系統(tǒng)自身所提供的搜索框便可對(duì)各app的內(nèi)部數(shù)據(jù)進(jìn)行檢索,并可在檢索結(jié)果基礎(chǔ)上啟動(dòng)相關(guān)app以查看內(nèi)部數(shù)據(jù),從而大大提高了檢索時(shí)的操作效率,節(jié)省了用戶的時(shí)間,也提升了用戶體驗(yàn)。
應(yīng)當(dāng)理解的是,以上的一般描述和后文的細(xì)節(jié)描述僅是示例性和解釋性的,并不能限制本發(fā)明。
附圖說明
此處的附圖被并入說明書中并構(gòu)成本說明書的一部分,示出了符合本發(fā)明的實(shí)施例,并與說明書一起用于解釋本發(fā)明的原理。
圖1是根據(jù)一示例性實(shí)施例示出的一種數(shù)據(jù)搜索方法的流程圖;
圖2是根據(jù)一示例性實(shí)施例示出的在操作系統(tǒng)自帶搜索框中檢索的界面示意圖;
圖3是根據(jù)一示例性實(shí)施例示出的操作系統(tǒng)檢索結(jié)果的界面示意圖;
圖4是根據(jù)一示例性實(shí)施例示出的一種數(shù)據(jù)搜索方法的流程圖;
圖5是根據(jù)一示例性實(shí)施例示出的操作系統(tǒng)檢索結(jié)果的界面示意圖;
圖6是根據(jù)一示例性實(shí)施例示出的一種數(shù)據(jù)搜索裝置的示意圖。
具體實(shí)施方式
這里將詳細(xì)地對(duì)示例性實(shí)施例進(jìn)行說明,其示例表示在附圖中。下面的描述涉及附圖時(shí),除非另有表示,不同附圖中的相同數(shù)字表示相同或相似的要素。以下示例性實(shí)施例中所描述的實(shí)施方式并不代表與本發(fā)明相一致的所有實(shí)施方式。相反,它們僅是與如所附權(quán)利要求書中所詳述的、本發(fā)明的一些方面相一致的裝置和方法的例子。
圖1是根據(jù)一示例性實(shí)施例示出的一種數(shù)據(jù)搜索方法的流程圖。該方法可用于手機(jī)、平板電腦等終端設(shè)備。
參見圖1所示,該方法可以包括:
步驟s101,為應(yīng)用軟件內(nèi)部的數(shù)據(jù)創(chuàng)建數(shù)據(jù)索引,其中每條數(shù)據(jù)索引均包含標(biāo)識(shí)及關(guān)鍵字。
以一款二手車app(例如優(yōu)信二手車)為例,該app中有很多二手車的數(shù)據(jù),可以根據(jù)具體情況為這些數(shù)據(jù)創(chuàng)建一條或多條索引,例如可以為品牌為“朗逸”的每輛二手車或其集合創(chuàng)建一條索引,該索引的關(guān)鍵字即為“朗逸”,并為每條索引賦予一個(gè)標(biāo)識(shí)(id)。
在本實(shí)施例或本發(fā)明其他某些實(shí)施例中,每條數(shù)據(jù)索引還可以包括以下項(xiàng)目中的一種或多種:
標(biāo)題,內(nèi)容描述,圖片信息,電話號(hào)碼,電子郵件地址。
這些更多的項(xiàng)目可以更好的展示出被搜索出來的數(shù)據(jù)索引,便于用戶查看。
步驟s102,將所述數(shù)據(jù)索引導(dǎo)入操作系統(tǒng)。
步驟s103,接收用戶在所述操作系統(tǒng)的搜索框中所輸入的檢索詞。
作為示例可參見圖2所示,在圖2中用戶打開了操作系統(tǒng)自帶的搜索框,并輸入了檢索詞“朗逸”。
步驟s104,根據(jù)數(shù)據(jù)索引中的關(guān)鍵字,獲取并顯示與所述檢索詞相匹配的數(shù)據(jù)索引。
作為示例可參見圖3所示,在圖3中,關(guān)鍵詞等于或包含檢索詞的各條數(shù)據(jù)索引被以列表的形式顯示了出來。
步驟s105,當(dāng)所述用戶選擇了其中一條數(shù)據(jù)索引后,啟動(dòng)指定應(yīng)用軟件,其中所述指定應(yīng)用軟件為被選擇的數(shù)據(jù)索引所屬的應(yīng)用軟件。
步驟s106,將被選擇的數(shù)據(jù)索引的標(biāo)識(shí)傳遞給所述指定應(yīng)用軟件,以使所述指定軟件根據(jù)所述標(biāo)識(shí)為所述用戶顯示所述指定應(yīng)用軟件內(nèi)部對(duì)應(yīng)的數(shù)據(jù)。
例如在圖3中,當(dāng)用戶點(diǎn)擊了其中一條數(shù)據(jù)索引后,優(yōu)信二手車的app被啟動(dòng),隨機(jī)手機(jī)轉(zhuǎn)入該app的界面,并顯示更詳細(xì)的app內(nèi)部數(shù)據(jù)。
參見圖4所示,在本實(shí)施例或本發(fā)明其他某些實(shí)施例中,所述指定軟件根據(jù)所述標(biāo)識(shí)為所述用戶顯示所述指定應(yīng)用軟件內(nèi)部的相應(yīng)數(shù)據(jù),包括:
步驟s401,根據(jù)所述標(biāo)識(shí)從所述指定軟件的數(shù)據(jù)索引列表中查找數(shù)據(jù)索引。
步驟s402,根據(jù)查找到的數(shù)據(jù)索引獲取所述指定應(yīng)用軟件內(nèi)部對(duì)應(yīng)的數(shù)據(jù)。
步驟s403,在所述指定應(yīng)用軟件中為所述用戶顯示所述對(duì)應(yīng)的數(shù)據(jù)。
在本實(shí)施例或本發(fā)明其他某些實(shí)施例中,當(dāng)所述數(shù)據(jù)索引中包括電話號(hào)碼或電子郵件地址時(shí),所述數(shù)據(jù)索引還相應(yīng)包括:
直接撥打所述電話號(hào)碼或給所述電話號(hào)碼發(fā)送短信的功能按鈕,或者,給所述電子郵件地址發(fā)送郵件的功能按鈕,以實(shí)現(xiàn)在不啟動(dòng)所述指定軟件的情況下直接撥打所述電話號(hào)碼或給所述電話號(hào)碼發(fā)送短信或給所述電子郵件地址發(fā)送郵件。
作為示例可參見圖5所示,在圖5中,每條數(shù)據(jù)索引中均包含聯(lián)系方式(電話號(hào)碼),所以用戶可以直接點(diǎn)擊通話圖標(biāo),開啟通話,聯(lián)系賣家。
在本實(shí)施例或本發(fā)明其他某些實(shí)施例中,所述操作系統(tǒng)可以為ios,所述方法使用ios中的spotlight特性實(shí)現(xiàn)。
下面便以ios為例對(duì)本發(fā)明方案作進(jìn)一步說明:
第一部分,將應(yīng)用軟件內(nèi)的數(shù)據(jù)與操作系統(tǒng)共享。
本實(shí)施例需要使用具備ios9.0及以上系統(tǒng)的手機(jī)。spotlight在ios9上做了一些新的改進(jìn),也就是開放了一些新的api,通過corespotlightframework可以在app中集成spotlight。集成spotlight的app可以在spotlight中搜索app的內(nèi)容,并且通過內(nèi)容打開相關(guān)頁(yè)面。
前提需要在工程中導(dǎo)入spotlight所需要的框架,即framework,在xcode開發(fā)工具中找到工程,點(diǎn)擊buildphases,找到linkbinarywithlibraries,在其中搜索corespotlight,點(diǎn)擊添加進(jìn)去就可以了。之后在appdelegate.m文件中導(dǎo)入頭文件,即在文件頂部輸入#import<corespotlight/corespotlight.h>。
然后就可以進(jìn)行相應(yīng)的開發(fā)工作。首先,需要?jiǎng)?chuàng)建一個(gè)配置展示內(nèi)容的對(duì)象cssearchableitemattributeset,這個(gè)對(duì)象可以設(shè)置它的標(biāo)題(title)、描述內(nèi)容(contentdescription)、圖片信息(thumbnaildata)、電話(phonenumbers)、是否支持撥打(supportsphonecall)、搜索關(guān)鍵字(keywords)等內(nèi)容,這些內(nèi)容都可以更好的展示被搜索出來的內(nèi)容。接下來需要?jiǎng)?chuàng)建可搜索條目,即cssearchableitem對(duì)象,其中uniqueidentifier相當(dāng)于這條搜索條目的id,domainidentifier相當(dāng)于相關(guān)的作用域。另外,蘋果還提供了一些api對(duì)這些索引條目進(jìn)行修改刪除操作,domainidentifier可以作為參數(shù),比如可以將這個(gè)域下的所有索引刪除,本文關(guān)于刪除不再展開描述。
上述敘述實(shí)現(xiàn)代碼如下:
第二部分,用戶可以在操作系統(tǒng)中搜索到對(duì)應(yīng)的數(shù)據(jù)(限于ios9及以上操作系統(tǒng))
在裝有ios9.0及以上系統(tǒng)的手機(jī)上返回到主屏顯示,在主屏顯示的情況下,向下滑動(dòng)屏幕或一直向右滑動(dòng)屏幕,屏幕上方會(huì)出現(xiàn)帶有“搜索”二字的搜索框。
在搜索框中輸入之前在cssearchableitemattributeset對(duì)象中設(shè)置的keywords,即可出現(xiàn)一條或幾條相關(guān)的搜索條目,作為示例可參見圖2所示。
第三部分,點(diǎn)擊條目可以啟動(dòng)軟件進(jìn)入詳情頁(yè)面
要想從搜索得到的數(shù)據(jù)索引可以點(diǎn)擊直接進(jìn)入app,就需要在appdelegate.m文件中重載application:continueuseractivity:restorationhandler:這個(gè)回調(diào)方法,在該方法中通過[useractivity.userinfostringforkey:cssearchableitemactivityidentifier]這個(gè)方法來找到每個(gè)數(shù)據(jù)索引所對(duì)應(yīng)的唯一識(shí)別,即id。通過系統(tǒng)對(duì)于id的識(shí)別,找到進(jìn)入app后所要顯示的內(nèi)容。
上述敘述實(shí)現(xiàn)代碼如下:
這樣用戶不需要啟動(dòng)app,只需使用操作系統(tǒng)自身所提供的搜索框便可對(duì)各app的內(nèi)部數(shù)據(jù)進(jìn)行檢索,并可在檢索結(jié)果基礎(chǔ)上啟動(dòng)相關(guān)app以查看內(nèi)部數(shù)據(jù),從而大大提高了檢索時(shí)的操作效率,節(jié)省了用戶的時(shí)間,也提升了用戶體驗(yàn)。
下述為本發(fā)明裝置實(shí)施例,可以用于執(zhí)行本發(fā)明方法實(shí)施例。對(duì)于本發(fā)明裝置實(shí)施例中未披露的細(xì)節(jié),請(qǐng)參照本發(fā)明方法實(shí)施例。
圖6是根據(jù)一示例性實(shí)施例示出的一種數(shù)據(jù)搜索裝置的示意圖.參見圖6所示,該裝置可以包括:
數(shù)據(jù)索引創(chuàng)建及導(dǎo)入模塊601,用于為應(yīng)用軟件內(nèi)部的數(shù)據(jù)創(chuàng)建數(shù)據(jù)索引,并將所述數(shù)據(jù)索引傳入操作系統(tǒng),其中每條數(shù)據(jù)索引均包含標(biāo)識(shí)及關(guān)鍵字;
檢索詞接收模塊602,用于接收用戶在所述操作系統(tǒng)的搜索框中所輸入的檢索詞;
數(shù)據(jù)索引顯示模塊603,用于根據(jù)數(shù)據(jù)索引中的關(guān)鍵字,獲取并顯示與所述檢索詞相匹配的數(shù)據(jù)索引;
軟件啟動(dòng)模塊604,用于當(dāng)所述用戶選擇了其中一條數(shù)據(jù)索引后,啟動(dòng)指定應(yīng)用軟件,其中所述指定應(yīng)用軟件為被選擇的數(shù)據(jù)索引所屬的應(yīng)用軟件;
數(shù)據(jù)顯示模塊605,用于將被選擇的數(shù)據(jù)索引的標(biāo)識(shí)傳遞給所述指定應(yīng)用軟件,以使所述指定軟件根據(jù)所述標(biāo)識(shí)為所述用戶顯示所述指定應(yīng)用軟件內(nèi)部對(duì)應(yīng)的數(shù)據(jù)。
在本實(shí)施例或本發(fā)明其他某些實(shí)施例中,所述指定軟件根據(jù)所述標(biāo)識(shí)為所述用戶顯示所述指定應(yīng)用軟件內(nèi)部的相應(yīng)數(shù)據(jù),包括:
根據(jù)所述標(biāo)識(shí)從所述指定軟件的數(shù)據(jù)索引列表中查找數(shù)據(jù)索引;
根據(jù)查找到的數(shù)據(jù)索引獲取所述指定應(yīng)用軟件內(nèi)部對(duì)應(yīng)的數(shù)據(jù);
在所述指定應(yīng)用軟件中為所述用戶顯示所述對(duì)應(yīng)的數(shù)據(jù)。
在本實(shí)施例或本發(fā)明其他某些實(shí)施例中,每條數(shù)據(jù)索引還包括以下項(xiàng)目中的一種或多種:
標(biāo)題,內(nèi)容描述,圖片信息,電話號(hào)碼,電子郵件地址。
在本實(shí)施例或本發(fā)明其他某些實(shí)施例中,當(dāng)所述數(shù)據(jù)索引中包括電話號(hào)碼或電子郵件地址時(shí),所述數(shù)據(jù)索引還相應(yīng)包括:
直接撥打所述電話號(hào)碼或給所述電話號(hào)碼發(fā)送短信的功能按鈕,或者,給所述電子郵件地址發(fā)送郵件的功能按鈕,以實(shí)現(xiàn)在不啟動(dòng)所述指定軟件的情況下直接撥打所述電話號(hào)碼或給所述電話號(hào)碼發(fā)送短信或給所述電子郵件地址發(fā)送郵件。
在本實(shí)施例或本發(fā)明其他某些實(shí)施例中,所述操作系統(tǒng)為ios,所述裝置使用ios中的spotlight特性實(shí)現(xiàn)。
關(guān)于上述實(shí)施例中的裝置,其中各個(gè)模塊執(zhí)行操作的具體方式已經(jīng)在有關(guān)該方法的實(shí)施例中進(jìn)行了詳細(xì)描述,此處將不做詳細(xì)闡述說明。
本領(lǐng)域技術(shù)人員在考慮說明書及實(shí)踐這里公開的發(fā)明后,將容易想到本發(fā)明的其它實(shí)施方案。本申請(qǐng)旨在涵蓋本發(fā)明的任何變型、用途或者適應(yīng)性變化,這些變型、用途或者適應(yīng)性變化遵循本發(fā)明的一般性原理并包括本發(fā)明未公開的本技術(shù)領(lǐng)域中的公知常識(shí)或慣用技術(shù)手段。說明書和實(shí)施例僅被視為示例性的,本發(fā)明的真正范圍和精神由所附的權(quán)利要求指出。
應(yīng)當(dāng)理解的是,本發(fā)明并不局限于上面已經(jīng)描述并在附圖中示出的精確結(jié)構(gòu),并且可以在不脫離其范圍進(jìn)行各種修改和改變。本發(fā)明的范圍僅由所附的權(quán)利要求來限制。