iOS9 Apple終于重視了Search走敌,而iOS的最大特征也在于App之間以及App與Web之間的無縫銜接碴倾。
1.為什么搜索是iOS 9的殺手級特性?
當(dāng)用戶升級到iOS 9系統(tǒng)了以后掉丽,出現(xiàn)了下面的使用場景:
用戶手機(jī)上App數(shù)量達(dá)到上百個(gè)時(shí)跌榔,他突然想起來在一個(gè)應(yīng)用的具體頁面有個(gè)特定內(nèi)容需要查看,但又不記得是在什么App查看過捶障,這時(shí)候僧须,只需要Search他記得的關(guān)鍵字,然后點(diǎn)擊對應(yīng)的條目项炼,直接跳入他想要的那個(gè)App的具體頁面担平,實(shí)在太方便了。
用戶突然想在網(wǎng)上買一雙鞋子锭部,沒有很好的選擇暂论,希望看看其他用戶都去哪里買,通過Search入口拌禾,她很快的就搜索到對應(yīng)的排名靠前網(wǎng)頁空另,例如天貓女鞋黄鳍,如果天貓女鞋頁面做了Web Markup標(biāo)記辙诞,且用戶手機(jī)端有天貓App奏瞬,那么用戶可以直接跳轉(zhuǎn)到天貓女鞋頁面树酪,Web搜索和Native體驗(yàn)無縫銜接坛芽。
想必在不久的將來解虱,移動端也會像桌面端一樣捅儒,搜索將成為一個(gè)主要流量入口查刻。
2.iOS 9上的Search是個(gè)什么不一樣的入口墨坚?
在iOS 9以前秧饮,Search入口功能單一,第三方App僅能搜索到App本身泽篮,無法像Mail盗尸,Message這些系統(tǒng)App可以直接搜到App的具體內(nèi)容并直接跳轉(zhuǎn)到對應(yīng)頁面,而從iOS 9開始帽撑,Search泼各,Spotlight和Siri都開始支持了第三方App的內(nèi)容搜索,直接跳轉(zhuǎn)亏拉。
iOS 9中新的Search扣蜻,Spotlight和Siri特性可能對于用戶和開發(fā)者而言是新的iOS系統(tǒng)中最強(qiáng)大和有用的部分逆巍,Apple重點(diǎn)關(guān)注in-app搜索和Web整合,兩者為App內(nèi)容和App探索帶來了巨大且全新的可能性。
在iOS中Search將會在多種方式中給開發(fā)者帶來好處莽使。最大的好處是锐极,即使一個(gè)用戶沒有安裝一款特定的App,Apple的Search App也會根據(jù)用戶的檢索關(guān)鍵字將特定App內(nèi)容展示在Spotlight和Safari的搜索結(jié)果中芳肌。從這些搜索結(jié)果中灵再,用戶能夠點(diǎn)擊對應(yīng)的內(nèi)容和從Smart Banner中下載App。
iOS 9的搜索入口與以往iOS系統(tǒng)想必已大大不同(左邊是iOS 8亿笤,右邊是iOS 9)

搜索任意內(nèi)容后翎迁,結(jié)果如下(左邊是iOS 8,右邊是iOS 9),想必之下责嚷,搜素內(nèi)容明顯豐富多了鸳兽。

3.如何讓你的App內(nèi)容可以被搜索到掂铐?
- 如何實(shí)現(xiàn)App內(nèi)容可搜索化呢罕拂?
三個(gè)維度去讓搜索和App內(nèi)容無縫銜接:
NSUserActivity:展示用戶在App中查看過的內(nèi)容。
CoreSpotlight:可以展示對應(yīng)App中所有實(shí)現(xiàn)了CoreSpoylight相關(guān)功能的內(nèi)容全陨。
Web Markup:展示網(wǎng)絡(luò)上的App相關(guān)markup的網(wǎng)頁爆班。
前面兩點(diǎn)的開發(fā)在后續(xù)的博客中會詳細(xì)介紹,今日著重講解Web Markup相關(guān)內(nèi)容辱姨。
總體上說柿菩,在使用了這三個(gè)相關(guān)API且指向同一唯一標(biāo)示符時(shí),這三個(gè)維度的相互結(jié)合能夠提高在Apple中的搜索排名雨涛。
4.Web與Native的無縫銜接
下面重點(diǎn)來說說Web Markup枢舶,以往來說,Web和Native是兩塊相對獨(dú)立的領(lǐng)域替久,在Markup外加Apple的支持凉泄,web與native的無縫銜接,減少復(fù)雜的app操作流程蚯根,用戶想要的App直接就可以展現(xiàn)后众,沒有任何中間環(huán)節(jié)。
對了颅拦,Apple不像百度蒂誉,付錢可以提高你的搜索排名,那么存在這樣的一個(gè)循環(huán)距帅,優(yōu)質(zhì)內(nèi)容被更多點(diǎn)擊右锨,被搜到幾率會越高,反之亦然碌秸,希望這樣同時(shí)也可以促進(jìn)我們內(nèi)容的質(zhì)量陡蝇,內(nèi)容才是關(guān)鍵H簟!登夫!
Apple通過了兩種途徑去增添Search的云端索引广匙,下面是增添云端索引的原理圖:

開發(fā)者需要做四件事情使得Web內(nèi)容能夠在App中可搜索:
1. 允許Apple使用爬蟲去發(fā)現(xiàn)和爬App的網(wǎng)址
2. 確認(rèn)App的網(wǎng)址已被做好詳細(xì)鏈接的Web Markup處理
3. App需要確認(rèn)能夠處理對應(yīng)的詳細(xì)鏈接
4. 為豐富的數(shù)據(jù)和結(jié)構(gòu)化數(shù)據(jù)增加標(biāo)記,使其能夠在搜索中展現(xiàn)
接下來是客戶端同學(xué)與前端同學(xué)的分工合作:
-
如何驗(yàn)證你的URL是否可以被搜索到恼策,是否已完成了Web Markup適配呢鸦致,Apple提供測試工具,Apple工具地址
這邊有兩個(gè)例子:
國外的完成Web Markup例子涣楷,幾乎完全支持了Apple協(xié)議
國內(nèi)的tmall例子分唾,幾乎完全沒有支持Apple協(xié)議
-
目前國外支持Web Markup的App如下,國內(nèi)由于暫時(shí)的國家限制并沒有相關(guān)支持狮斗,但是都是可以提前做好相關(guān)web的準(zhǔn)備工作绽乔,Web Markup支持App列表
如何有效支持Apple的搜索呢?按照以下步驟一步一步實(shí)現(xiàn)碳褒,再最后利用Apple的官方檢測工具就可以了折砸!
Deep Link: Smart Banner(每家公司都也有類似的方案)(前端同學(xué)負(fù)責(zé))
-
Universal Link:
- markup過的URL會直接跳轉(zhuǎn)到對應(yīng)Native頁面 (phone上安裝了App)
- 繼續(xù)下一跳對應(yīng)的Web (phone沒有安裝App)
-
Associated Domains in project Capabilities (客戶端同學(xué)負(fù)責(zé))
- applinks:xxx.com
- applinks:www.xxx.com
- applinks:*.xxx.com(不知道這樣可以嗎?)
-
webserver apple-app-site-association文件 (前端同學(xué)負(fù)責(zé))
path里面包含了一份白名單列表沙峻,包含了app可操作URL睦授,從而喚起App進(jìn)入到具體頁面,和上面的applinks會進(jìn)行拼接摔寨,最后URL呈現(xiàn)為:https://www.xxxx.com/apple-app-site-association以及https://xxxx.com/apple-app-site-association{ "applinks":{ "apps":[], "details":[ { "appID":"AppID.Bundle Identifier", "paths":[ "/*" ] } ] } }
在UIAppDelegate中iOS8以后有了Delegate:continueUserActivity去枷,web markup后的頁面userActivity.activityType是NSUserActivityTypeBrowsingWeb然后獲取對應(yīng)的URL后可以通過統(tǒng)一跳轉(zhuǎn)協(xié)議進(jìn)行攔截跳轉(zhuǎn)。(注意是否有循環(huán)跳轉(zhuǎn)的坑)(客戶端同學(xué)負(fù)責(zé))
iTunes Connect上的Support URL和Marketing URL是复,這兩個(gè)最好也放在associated domain删顶,有利于Apple爬蟲去爬到相關(guān)URL的內(nèi)容。(運(yùn)營同學(xué)和客戶端同學(xué)確認(rèn))
web頁面需要包含robots.txt淑廊,這是一個(gè)web標(biāo)準(zhǔn)內(nèi)容逗余,用于和網(wǎng)絡(luò)爬蟲以及相關(guān)web機(jī)器人互相傳輸。
-
前端同學(xué)需要使用Open Graph或者Schema.org組織結(jié)構(gòu)化的數(shù)據(jù)蒋纬,這樣用戶在搜索的時(shí)候可以展示對應(yīng)的豐富數(shù)據(jù)猎荠。
Open Graph格式: <meta property="og:image" content="http://xxxxxx.jpg" /> <meta property="og:image:secure_url" content="https://xxxx.jpg" /> <meta property="og:image:type" content="image/jpeg" /> <meta property="og:image:width" content="640" /> <meta property="og:image:height" content="340" /> <meta property="og:video" content="http://xxxxx.mp4" /> <meta property="og:video:secure_url" content="https://xxxxx.mp4" /> <meta property="og:video:type" content="video/mp4" /> <meta property="og:video:width" content="1280" /> <meta property="og:video:height" content="720" />
Schema.org格式: <title>Beats by Dr. Dre Solo2 Wireless Headphones - Apple</title> <meta property="og:description" content="Beats by Dr. Dre Solo2 Wireless Headphones let you take your music anywhere you go. Get fast, free shipping when you buy online."> <span itemprop="reviewCount">924</span> <meta itemprop="ratingValue" content="4.5"> <meta itemprop="priceCurrency" content="USD">
這樣遠(yuǎn)比搜索到純文本的效果好多了,可以展示豐富數(shù)據(jù)蜀备,當(dāng)然也需要前端同學(xué)的積極配合了关摇。
-
接下來就是驗(yàn)證工作,首先還是用到工具地址,然后通過URL跳轉(zhuǎn)的形式碾阁,驗(yàn)證是否可以直接跳轉(zhuǎn)到具體的App頁面输虱,如下圖所示,用戶可以點(diǎn)擊一個(gè)特定的URL,然后就可以直接跳轉(zhuǎn)到App的詳情頁面
5.不幸的是脂凶,中國區(qū)暫未支持
??目前WebMarkup暫時(shí)還不支持中國區(qū)宪睹,所以國內(nèi)用戶沒有辦法在搜索入口直接搜索到web結(jié)果愁茁,但按照Apple對中國區(qū)的重視程度,只是時(shí)間問題亭病。
- Apple的官方公關(guān)入口在此網(wǎng)址
- 目前支持國家Spotlight Suggestions