iOS9 Search API 之 Spotlight
iOS9以后 有三種api提供搜搜方式 加強引導用戶關注 我們的app及相關內容的方式
NSUserActivity
Web Markup?
Core Spotlight 用法
前兩種 實戰操作性不夠強(后續補充) 這里先講 spotlight 實現機制和方法 分析
iOS 8的時候 spotlight 就可以搜索應用名稱,iOS9以后,加強了深度搜索功能,就是 你預設置在手機里的”埋點”,都可以在搜索里面,展示給用戶,當用戶點擊暴露的搜索結果時候 會根據需求進行喚醒應用/跳轉指定頁面等操作.
也就是說,當且僅當你至少打開一次應用觸發了埋點操作,此功能才正式生效.
操作方式:
1. 使用框架CoreSpotlight.framework ?引入頭文件??#import <CoreSpotlight/CoreSpotlight.h>
2. 要創建檢索數據model, 這個完全看需求了 一般model: title,content,iconImagePath,type
3. 在加載應用后 要緩存 spotlight 數據源, 前提也很簡單 系統規格不小于iOS9 不然會掛掉,比如空指針的原因等.
也就是說,只有iOS9以上的用用 才會享用到 該特性,同 上一篇文章講 universal links一樣
然后在appdelegate ?回調方法里 做相應操作 比如觸發跳轉到指定頁面的操作.
上代碼:
1.
正如我做的標記,這里 NSActivity 的屬性userInfo 里面 唯一可操作的鍵值對
?[@"kCSSearchableItemActivityIdentifier" :value]
所以 如果有什么具體參數 要在觸發的操作中使用 ,全部嵌入這個value吧.?
建議多測測 別被低版本系統坑了, ?我手里沒iOS 9以下真機,寫這篇文章時候沒測到,如果你覺得有問題可以給我寫評論. 我也會在真正運用到該方法時候,修正博客內容.
上圖:(我插入了 一個 plist文件, 比如 我可以搜索 胃疼, 胃疼內容為例)
?
?
然后點擊 就跳轉到該應用了 無論是 掛起 還是啟動app??如果指定了頁面 ,就會跳轉到指定頁面
https://developer.apple.com/library/ios/releasenotes/General/WhatsNewIniOS/Articles/iOS9.html
http://www.cnblogs.com/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
?
轉載于:https://www.cnblogs.com/someonelikeyou/p/5568102.html
總結
以上是生活随笔為你收集整理的iOS9 Search API 之 Spotlight的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: HTTP MIME type
- 下一篇: matlab练习程序(并行计算)