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
iOS9 Search API 之 Spotlight的更多相关文章
- Search API 官方文档 可以用了查看自己的app
Search API October 24, 2012 - HTTPS is now supported for Search and Lookup requests. Please update y ...
- ElasticSearch Search API 简介
REST request URI curl 'localhost:9200/bank/_search?q=*&pretty' 1. localhost:9200/bank/_search,以 ...
- Elasticsearch学习笔记(二)Search API 与 Query DSL
一. Search API eg: GET /mall/product/_search?q=name:productName&sort=price desc 特点:search的请求参数都是以 ...
- 通过Google Custom Search API 进行站内搜索
今天突然想把博客的搜索改为google的站内搜索,印象中google adsense中好像提高这个站内搜索的代码,但苦逼的是google adsense帐号一直审核不通过,所以只能通过google c ...
- 申请Bing Search API
地址:https://datamarket.azure.com/home 没有帐号先注册一个,然后登录. 1:在数据中订阅Bing Search API,如果找不到就使用这个地址: https://d ...
- Elasticsearch 6.x版本全文检索学习之Search API
Elasticsearch 6.x版本全文检索学习之Search API. 1).Search API,实现对es中存储的数据进行查询分析,endpoind为_search,如下所示. 方式一.GET ...
- Elasticsearch7.X 入门学习第四课笔记---- Search API之(Request Body Search 和DSL简介)
原文:Elasticsearch7.X 入门学习第四课笔记---- Search API之(Request Body Search 和DSL简介) 版权声明:本文为博主原创文章,遵循CC 4.0 BY ...
- Elasticsearch7.X 入门学习第三课笔记----search api学习(URI Search)
原文:Elasticsearch7.X 入门学习第三课笔记----search api学习(URI Search) 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出 ...
- ES Search API
Search API 搜索请求 SearchRequest用于与搜索文档.聚合.suggestions相关的任何操作,还提供了在结果文档上请求高亮的方法. 在最基本的表单中,我们可以向请求添加查询: ...
随机推荐
- android 阿拉伯语下,图库中编辑运动轨迹图片,动画中会显示绿色的图片
alps/packages/apps/Camera/src/com/android/camera/FileSaver.java 1:import java.util.Locale; 2:modify ...
- linux 命令之 ping
ping命令主要用于检測主机的连通性. 语法: ping [-dfnqrRv] [-c <完毕次数>] [-i <间隔秒数>] [-I <网络接口>] [-l &l ...
- TP5 Session Db驱动
一.下载附件,解压,文件路径\extend\driver\session\Db.php 驱动文件下载:Db.php 二.创建数据表 DROP TABLE IF EXISTS `platform_ses ...
- Android Studio--NDK编译C代码为.so文件,JNI调用
前言: 从Android Studio开始,就支持jni和.so库调用了. 环境: Windows 7+Android Studio2.1.2+NDK版本:android-ndk-r10e 准备工作: ...
- 十年WEB技术发展历程
一个小分享,知识有限,抛砖引玉. ajax 03年的时候我上六年级,那时候网吧刚在小县城的角落萌生.传奇,大话西游第一代网游一时风靡.我抱着试一试的心态给了网吧老板两块钱想申请个号玩玩,然后接下来的一 ...
- JavaScript 与 Java 是两种完全不同的语言,无论在概念还是设计上。
JavaScript 与 Java 是两种完全不同的语言,无论在概念还是设计上. Java(由 Sun 发明)是更复杂的编程语言. ECMA-262 是 JavaScript 标准的官方名称. Jav ...
- js保留几位小数
function reservedDecimal(val, digit) { return Number(val).toFixed(digit);} 调用 reservedDecimal(10,2); ...
- week 6: kernel regression
华盛顿大学 machine learning regression 第六周笔记. 普通的回归方法是基于training set的整体性进行训练的,如果训练数据集 具有明显的分段性,那么普通的回归方法预 ...
- Laravel5.1 Middleware中间件(初级)
中间件?什么鬼? 大家第一次接触这个词都会有这么个疑问,但它其实没那么神秘. 一句话就可以解释它:过滤HTTP请求专用机制. 为什么要使用中间件? 过滤HTTP请求是可以写在别的地方,比如说控制器中 ...
- AdnroidUtils-常用工具类(showDiaLog/HTTP)
1. HttpUtils 该工具类应用于Android客户端+Web服务器 /** * */ package com.nubb.auction.client.util; import java.uti ...