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
Bring your app’s core features to users with Ap...
Search
Ryomm
June 27, 2024
Technology
700
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Bring your app’s core features to users with App Intents とか App Intents 関連の要約
@2024.06.26 Swift愛好会スピンオフ WWDC24セッション要約会
Ryomm
June 27, 2024
More Decks by Ryomm
See All by Ryomm
QRコードの仕様ってn種類あんねん
ryomm
0
11
クソアプリハッカソン
ryomm
0
150
万年筆のスゝメ
ryomm
0
150
Other Decks in Technology
See All in Technology
勉強会企画をアプリで構造化してみた 〜そこで見えた、AIとの付き合い方〜 / I've structured a study group plan using an app.
pauli
0
280
“全部コピーしない”ファイルデータの活用 : — FSx for ONTAP × S3 Tables × Icebergで作るメタデータカタログ
yoshiki0705
0
230
BPaaSで進むAIオペレーションの現在地 AI実装が効く領域とスケーラビリティの選定と実装
kentarofujii
0
250
Baseline対応のDOMの型定義を作った
uhyo
2
500
そこにあるから地図ができる~位置を示す"モノ"を愉しむ~ - Interface 2026年6月号GPS特集オフ会 / interface_202606_GPS_offline
sakaik
1
180
RAGの精度向上とエージェント活用
kintotechdev
2
120
AWS Blocks を触ってみた/first-tach-aws-blocks
fossamagna
2
110
組織における AI-DLC 実践
askul
0
270
そのタスクオンスケですか?
poropinai1966
0
110
グローバルチームと挑むプロダクト開発
sansantech
PRO
1
140
CVE-2026-20833_脆弱性対応とAES 化について
jukishiya
0
340
技術・能力を向上する原理原則 #きのこセッションa #きのこ2026
bash0c7
0
190
Featured
See All Featured
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
430
KATA
mclloyd
PRO
35
15k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Designing for humans not robots
tammielis
254
26k
From π to Pie charts
rasagy
0
220
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
55k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
450
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
500
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
2.1k
A Modern Web Designer's Workflow
chriscoyier
698
190k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
340
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.8k
Transcript
App Intentの要約でーす What’s newやるって言ってたんですけど、必要な前提知識が多かったのでこっちの動画をメインにしました。What’s newは添える程度です
Ryommです!KINTOテクノロジーズという会社でiOSアプリエンジニアをしてます! こういう場で話すの初めてで緊張がやばいので、やさしめにTwitter盛り上げよろしくお願いします!
今日は現地いった同僚にもらったお土産Tシャツ着てきました!ayy
App Intentsとは、iOS16で登場したフレームワークです 再利用可能な機能の基盤「Intent」を作成し、OS側が提供する体験とアプリが提供する機能を深く統合することができるようになります。
アプリは一つの箱ととらえることができる ユーザは作業を行うために1つのアプリだけでなく、いくつかのアプリをまたぐ必要がある時もあります アプリが持つものを表示したり実行するには、それぞれのアプリに入る必要があります 他のアプリからはアクセスできないので、今いる箱を出て、別の箱に移動しないといけない =アプリを切り替える必要がある 例えば、今流している曲の歌詞が読みたいなと思った時、 ミュージックで曲名を確認して、それをSafariで検索する、 というように2つのアプリを開く必要があります。 これはショートカットを使えばシームレスに実行することができますよね? このようにデバイスが箱の中身=アプリのコア機能を理解できて、簡単にアクセスできるようになると、ユーザはシームレスな作業が行えるようになります
これを実現するにはApp Intentフレームワークを導入します
Shortcutを例に取りましたが、App Intentを使って実現できる体験は他にも、Spotlight、Widgetやアクションボタン、ライブアクティビティ、Apple PencilのSqueeze、そしてApple Intelligence、Controlsなどがあります。 これを使うと、それぞれのアプリが提供する機能をパーソナライズして、ユーザはアプリの機能をより自分の行動に沿った使い方をできるようになります。するとアプリを使い続ける可能性も上がるます。ユーザにとってもデベロッパーにとっても嬉しいですね!
App Intent自体は機能ではなく、機能を構築するための共通の基盤です。 App Intentが行う責務としては2つあり、 アプリのコア機能などをシステム側が理解できるように、外部に公開する アクションを実行し、完了したことを呼び出し元に伝える通信する こうすることで、アプリは実装に集中することができます 1つのシステムの機能に対応するためにApp Intentを作ったら、同じコードで他の機能へ展開することができます
App Intentにおいて重要な3つのトップレベルの概念があります。 Intents: 実行するアクション Entities: オブジェクト App shortcuts: アプリのコア機能をパッケージしたもの Intentsが動詞、Entitiesが名詞、そしてApp
shortcutsが文、という関係性です。 App Intentを作成すると、デフォルトでショートカットアプリのアクションとして表示されます。 このショートカットアクションがIntentです。
(4分超えてたら)一応実装方法についてもまとめたんですが、時間がないので飛ばします。あとで資料を上げるので、そちらを参照するか、ビデオを見るかしてください〜 これはAppIntentの実装ですね〜 (4分超えてなかったら) では実装方法について軽く触れます。 ビデオではもっと詳細に説明されてましたが、要約なので主要キャストだけ取り上げます。 まず、AppIntentに準拠した構造体を定義します title: アクションの名前(必須) func perform()
実行するアクションを定義(必須) この2つは必須です。 パラメータを渡すこともできます。これがEntityです。
Building the code ΫΤϦ(ඞਢ) AppEntityΛܧঝ(ඞਢ) ࣝผࢠ(ඞਢ) λΠϓͱσʔλͷදࣔ (ඞਢ) ϓϩύςΟ(≠ύϥϝʔλ)
What’s new in App Intent (super summary) IndexedEntity Transferable →
Meet Transferable ( WWDC22 ) IntentFile FileEntity Universal links URLRepresentableEntity URLRepresentableEnum URLRepresentableIntent Developer improvements UnionValue Generated titles Framework improvements
引用元のビデオとドキュメントです 日本語だとSiriの要約をされていた堤さんの記事がたくさん出てくるので、そちらを見てください!
Apple Intelligenceの登場で、App Intent に対応するのは基本人権になりつつあるなと感じました。 一つ対応すればかなり使い回しが効くので、コスパは高いと思います。 要約したビデオもそうですが、この機会にApp Intent対応してくれや!という圧を感じてましたw 中々ビジネス職から要望が出てこなそうな機能なので、エンジニア側から提案してプッシュしていかねば!と思いました。 以上、ありがとうございました!