iOS9 Search API 之 Spotlight
iOS9以后 有三種api提供搜搜方式 加強引導用戶關注 我們的app及相關內(nèi)容的方式
NSUserActivity
Web Markup
Core Spotlight 用法
前兩種 實戰(zhàn)操作性不夠強(后續(xù)補充) 這里先講 spotlight 實現(xiàn)機制和方法 分析
iOS 8的時候 spotlight 就可以搜索應用名稱,iOS9以后,加強了深度搜索功能,就是 你預設置在手機里的”埋點”,都可以在搜索里面,展示給用戶,當用戶點擊暴露的搜索結(jié)果時候 會根據(jù)需求進行喚醒應用/跳轉(zhuǎn)指定頁面等操作.
也就是說,當且僅當你至少打開一次應用觸發(fā)了埋點操作,此功能才正式生效.
操作方式:
1. 使用框架CoreSpotlight.framework 引入頭文件 #import <CoreSpotlight/CoreSpotlight.h>
2. 要創(chuàng)建檢索數(shù)據(jù)model, 這個完全看需求了 一般model: title,content,iconImagePath,type
3. 在加載應用后 要緩存 spotlight 數(shù)據(jù)源, 前提也很簡單 系統(tǒng)規(guī)格不小于iOS9 不然會掛掉,比如空指針的原因等.
也就是說,只有iOS9以上的用用 才會享用到 該特性,同 上一篇文章講 universal links一樣
然后在appdelegate 回調(diào)方法里 做相應操作 比如觸發(fā)跳轉(zhuǎn)到指定頁面的操作.
上代碼:
1.

正如我做的標記,這里 NSActivity 的屬性userInfo 里面 唯一可操作的鍵值對
[@"kCSSearchableItemActivityIdentifier" :value]
所以 如果有什么具體參數(shù) 要在觸發(fā)的操作中使用 ,全部嵌入這個value吧.

建議多測測 別被低版本系統(tǒng)坑了, 我手里沒iOS 9以下真機,寫這篇文章時候沒測到,如果你覺得有問題可以給我寫評論. 我也會在真正運用到該方法時候,修正博客內(nèi)容.
上圖:(我插入了 一個 plist文件, 比如 我可以搜索 胃疼, 胃疼內(nèi)容為例)


然后點擊 就跳轉(zhuǎn)到該應用了 無論是 掛起 還是啟動app 如果指定了頁面 ,就會跳轉(zhuǎn)到指定頁面
https://developer.apple.com/library/ios/releasenotes/General/WhatsNewIniOS/Articles/iOS9.html
http://www.rzrgm.cn/CocoonJin/p/4703366.html?utm_source=tuicool&utm_medium=referral
http://www.cocoachina.com/ios/20150819/13116.html
http://www.ithao123.cn/content-10752357.html
mdsa.51cto.com/art/201507/484497.htm
http://www.csdn.net/article/2015-07-16/2825222-search-apis
posted on 2016-06-07 19:17 ACM_Someone like you 閱讀(371) 評論(0) 收藏 舉報
浙公網(wǎng)安備 33010602011771號