28
とにかく明るい Core Spotlight @yimajo

とにかく明るいCore Spotlight

  • Upload
    -

  • View
    1.898

  • Download
    0

Embed Size (px)

Citation preview

とにかく明るいCore Spotlight@yimajo

NDA関連についておさらい

WWDC のセッションで紹介された範囲なら機密情報に当たらない

ログインしなくても読める情報は「Apple によって一般に公開されている情報」に該当すると思われる

http://qiita.com/uasi/items/4d17cd1b7f83a6814c83参考

このスライドの検索画面は全てWWDCで公開されたものです

話すこと

Core Spotlight

ユーザ目線での使われどころ

実装について

Core Spotlightとは自分の端末でアプリ内情報をSpotlightから検索可能にする

当然他人からは検索できない

検索結果をタップするとアプリが起動

ユーザ目線でCoreSpotlightを使ってもらえると嬉しい所

電子書籍リーダのタイトルとか

似たようなアプリはどちらにデータが有るか覚えられない

Spotlightで検索できればどちらにあってもいい

Spotlight検索があるからそのアプリを選ぶ?

という事にはならない

競合するアプリこそ、Core Spotlight で検索できるようにしておくとユーザは嬉しい

開発者間で情報共有して良い検索体験を作れるようにするほうがいいに決まってる

実装について

iOS9-day-by-dayというiOS9のサンプルコードがある

https://github.com/shinobicontrols/iOS9-day-by-day

(Apple公式ではないですよ)

サンプルについて検索対象にしたいアプリ内部情報を全件ループして

Spotlightに表示させるtitle、contentDescriptionをStringに、thumbnailDataをNSDataの要素にセット

検索は基本的には「前方一致」

タイトルと本文しか検索対象にならないの?

安心して下さい

検索可能なキーワードを 配列で指定可能です

attributeSet.keywords = ["履いてます", “よ"]

キーワードだけ?

attributeSet.keywords = ["履いてます", “よ"]

安心して下さい

attributeSet.keywords = ["履いてます", “よ"]

キーワード以外も公式リファレンスに書かれています

ただし数は多い ざっくり160~180個

電話とかメールできるやつは?AirBnBの例では検索結果の右に受話器アイコン表示してる

タップすると電話が起動

WWDCの動画では他にもメールのアイコンもあった

安心してください

supportsPhoneCall: NSNumber

公開された情報であるAPI diffに存在する要素

supportsPhoneCallを1にして

phoneNumbers: [String]に電話番号セット

https://developer.apple.com/library/prerelease/ios/releasenotes/General/iOS90APIDiffs/Objective-C/CoreSpotlight.html

電話アプリが起動する

自己紹介

StargazerというWebサービスをつくっています

https://stargzr.net/

参考URL

CSSearchableItemAttributeSet

https://developer.apple.com/library/prerelease/ios/documentation/CoreSpotlight/Reference/CSSearchableItemAttributeSet_Class/index.html#//apple_ref/occ/cl/CSSearchableItemAttributeSet

公式のクラスリファレンス

検索要素が網羅されている

App Search Programming Guide

https://developer.apple.com/library/prerelease/ios/documentation/General/Conceptual/AppSearch/index.html#//apple_ref/doc/uid/TP40016308-CH4-SW1

公式のガイドのSearch API編

比較的新しく2015.08.07に作成されている

今のところ大したことは書いていないが今後に期待

iOS Search API Best Practices and FAQs

https://developer.apple.com/library/prerelease/ios/technotes/tn2416/_index.html#//apple_ref/doc/uid/DTS40016269

公式のTechnical NoteのSearch API編

App Search Programing Guideと内容がかぶっている

今のところ大したことは書いていないが今後に期待