Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Как внедрить Siri в приложение и помочь Apple с...
Search
REDMADROBOT
September 07, 2018
Programming
0
5.6k
Как внедрить Siri в приложение и помочь Apple сделать её полезнее
REDMADROBOT
September 07, 2018
Tweet
Share
More Decks by REDMADROBOT
See All by REDMADROBOT
rn.pdf
redmadrobot
0
5.3k
Безопасность соединения
redmadrobot
0
5.4k
Other Decks in Programming
See All in Programming
Rubyで始める関数型ドメインモデリング
shogo_tksk
0
140
責務と認知負荷を整える! 抽象レベルを意識した関心の分離
yahiru
8
1.5k
なぜイベント駆動が必要なのか - CQRS/ESで解く複雑系システムの課題 -
j5ik2o
14
4.7k
推しメソッドsource_locationのしくみを探る - はじめてRubyのコードを読んでみた
nobu09
2
340
CSS Linter による Baseline サポートの仕組み
ryo_manba
1
160
ファインディLT_ポケモン対戦の定量的分析
fufufukakaka
0
940
React 19アップデートのために必要なこと
uhyo
8
1.5k
Swift Testingのモチベを上げたい
stoticdev
2
140
Rails 1.0 のコードで学ぶ find_by* と method_missing の仕組み / Learn how find_by_* and method_missing work in Rails 1.0 code
maimux2x
1
250
ナレッジイネイブリングにAIを活用してみる ゆるSRE勉強会 #9
nealle
0
160
Honoとフロントエンドの 型安全性について
yodaka
7
1.5k
もう少しテストを書きたいんじゃ〜 #phpstudy
o0h
PRO
19
4.1k
Featured
See All Featured
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
13
1k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.7k
The Pragmatic Product Professional
lauravandoore
32
6.4k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
4 Signs Your Business is Dying
shpigford
183
22k
Testing 201, or: Great Expectations
jmmastey
42
7.2k
Building Flexible Design Systems
yeseniaperezcruz
328
38k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Speed Design
sergeychernyshev
27
810
Mobile First: as difficult as doing things right
swwweet
223
9.5k
Designing for humans not robots
tammielis
250
25k
Transcript
Как внедрить Siri в приложение и помочь Apple сделать её
полезнее Михаил Николаев 11/09/2018 m.nikolaev@redmadrobot.com
План - Что умеет Siri - Какие технологии используются -
Siri Suggestions - Демо - Выводы 01
Siri - Движок распознавания речи от Nuance Communications - 2010
г. - Отдельное приложение Siri в App Store - 2011 г. - Презентация Apple 02
01 “KNOWLEDGE NAVIGATOR”, 1987
04 Что умеет Siri
Что умеет Siri - Открывать экран приложения и показывать информацию
на нем - Показывать один из экранов приложения внутри диалога - Выполнять основные действия приложения - Siri Suggestions 05
06
Что умеет Siri - Открывать экран приложения и показывать информацию
на нем - Показывать один из экранов приложения внутри диалога - Выполнять основные действия приложения - Siri Suggestions 07
08
Что умеет Siri - Открывать экран приложения и показывать информацию
на нем - Показывать один из экранов приложения внутри диалога - Выполнять основные действия приложения - Siri Suggestions 09
10
Что умеет Siri - Открывать экран приложения и показывать информацию
на нем - Показывать один из экранов приложения внутри диалога - Выполнять основные действия приложения - Siri Suggestions 11
12
SiriKit - iOS 10 - Запросы для мессенджеров, платежей, поездок
на авто, звонков, … - iOS 11 - Новые виды запросов - iOS 12 - поддержка любых видов запросов, Siri suggestions 13
14
Siri API - iOS 10 - Запросы для мессенджеров, платежей,
поездок на авто, звонков, … - iOS 11 - Новые виды запросов - iOS 12 - поддержка любых видов запросов, Siri suggestions 15
Siri API - iOS 10 - Запросы для мессенджеров, платежей,
поездок на авто, звонков, … - iOS 11 - Новые виды запросов - iOS 12 - поддержка любых видов запросов, Siri suggestions 16
Какие технологии используются - NSUserActivity - Intents 17
18
NSUserActivity - Что-то открыть в приложении - Не поддерживает взаимодействие
с приложением на экране Siri - Возможно вы уже поддерживаете 19
NSUserActivity - Что-то открыть в приложении - Не поддерживает взаимодействие
с приложением на экране Siri - Возможно вы уже поддерживаете 20
NSUserActivity - Что-то открыть в приложении - Не поддерживает взаимодействие
с приложением на экране Siri - Возможно вы уже поддерживаете 21
14 Spotlight
14 Handoff
Создание NSUserActivity let activity = NSUserActivity(activityType: «com.redmadrobot.siriTest.my-products») activity.title = "Мои
продукты" 24
Конфигурация NSUserActivity // iOS 9 activity.isEligibleForHandoff = true activity.isEligibleForSearch =
true activity.isEligibleForPublicIndexing = true // iOS 12 activity.isEligibleForPrediction = true 25
Передача userinfo activity.userInfo = ["id": "old-product"] 26
Передача метаданных let attributes = CSSearchableItemAttributeSet(itemContentType:) attributes.thumbnailURL = myThumbnailURL activity.keywords
= ["список", "продукты", "счет"] activity.contentAttributeSet = attributes 27
Создание NSUserActivity // для Handoff activity.becomeCurrent() // для Siri viewController.userActivity
= activity 28
func application(_ application: UIApplication, continue userActivity: NSUserActivity, restorationHandler: @escaping ([UIUserActivityRestoring]?)
-> Void) -> Bool { // действие c userActivity return true } 29 Работа с NSUserActivity AppDelegate
Какие технологии используются - NSUserActivity - Intents 30
Intents - Отобразить UI вашего приложения в диалоге с Siri
- Работает без запуска приложения - Сложнее в имплементации 31
32
Intent - Обозначает тип запроса для Siri - Схожие запросы
сгруппированы в домены - Домен Messages: - Intent передачи сообщений - Intent поиска сообщений - Intent обозначения сообщения как прочитанное 33
34 Определение Создание Обработка Жизненный цикл Intent SiriTestProject Siri App
Extensions
App Extensions 35 Intents Intents UI (optional)
Плюсы для пользователя - Облегчит выполнение однотипных действий в приложении
через Siri - Напомнит и сделает за вас 36
Плюсы для бизнеса - Увеличит связь между брендом и клиентом
- Возможность увеличить продажи благодаря возросшему количеству повторяемых покупок 37
38 Siri Suggestions
39
«Покажи счет на дебетовых картах» 40
«Покажи счет на дебетовых картах» 41
«Покажи счет на кредитных картах» 42
«Покажи счет на %параметр» 43
15 августа, 18:02 15 августа, 09:45 «Покажи счет на дебетовых
картах» «Какая погода сегодня» 22 августа, 18:04 «Покажи счет на дебетовых картах» 23 августа, 18:03 «Покажи счет на дебетовых картах» Предложение 44
Каким должно быть обращение к Siri - Коротким - Запоминающимся/удобным
для повторения - Включать глагол - Не включать точное время - Без фразы «Привет, Siri» 45
Тестирование 46
info.plist - IntentsSupported - IntentsRestrictedWhileLocked - IntentsRestrictedWhileProtectedDataUnavailable 47 И БЕЗОПАСНОСТЬ
Демо 48
49
Выводы - Работать с приложением, не заходя в него -
Работать с несколькими приложениями сразу - Пользоваться Siri Suggestions 50 SIRI ДАЕТ ВОЗМОЖНОСТЬ:
Полезные ссылки - WWDC 2018, session 211: Introduction to Siri
Shortcuts - https://blog.prototypr.io/its-time-to-start-talking- to-your-iphone-again-how-to-use-siri-shortcuts- c98540edd55e - Ссылка на демо 51
@micnikolev 52