3/2 アプリを新次元に導く3D Touch #tryswiftconf
try!Swiftのセッションまとめシリーズです。Meghan Kaneさんの「3D Touch: Bring your apps to a new dimension」についての記事になります。
資料
公開されていないようです。
内容
3Dタッチの概要となぜ素晴らしいのかという話
3Dタッチの歴史
- 6s以降に搭載
- 圧力を加えると検知できる
- Appleは開発に5年を費やしている
- なぜ3Dタッチをサポートすべきなのか
- ユーザが使いたい機能に早くたどり着ける
- 簡単にアクセスできる手法になってきている
- 注目も高まっている
- AppStoreでフィーチャーされる可能性も
- より多くのユーザに使ってもらえる
- APIが使いやすい
- 3Dタッチをサポートしているアプリの例
- アクションのプレビュー、エクステンションについても話す
- Caribou Appはこのために作った
- 日常の場面で使う表現が表示される
- 3つのアクションを用意
- ホームアイコンのアクションは最大4つまで追加できる
- 優先順位を付けて表示すると良い
- 動的、静的なアクションがある
- 静的なクイックアクション
- コンパイルの時に作成される
- info.plistに入れておく
- 2つ必須のプロパティ、3つのオプションプロパティがある
- itemtype:識別子
- itemtitle:3Dタッチを行う時に表示される文字列
- 動的なクイックアクション
- 実行時に登録される
- 使ったことがない場合は表示されない
- ウィジェット
- iOS10から
- peek & popの説明
- よく使われている
- 3Dタッチでプレビューしてコンテンツが見える
- その後遷移するかどうかを決める必要がある
- ナビゲーションせずに英文和訳を確認したいかも
- ユーザが実際に3D Touchを利用できるか確認するべき
- 使えない場合、オフにしている場合がある
- チェックはViewControllerのviewDidLoadなどで
- その後アップデートを検知する必要がある
- プロパティが変わっている可能性があるため
- アプリを使っている最中に変わる場合がある
- 3D Touchオフの人に似たような機能を提供できるか
- UILongPressGestureRecognizerがそれに近い
- peek & popの具体的な仕組み
- 2つの必須メソッド
- 短時間で対応できる
- 押している圧力に応じて処理を変更したい場合
- UIPreviewInteractionが使える
- iOS10から提供されている
- 0-1の間の値で取れる
- 圧力によって読み上げ速度を変えたりできる
実装をすることで…
- かなり簡単にはやくユーザに対しての付加価値を与えることができる
- より多くのコンテンツを表示させることができる
- 通知をよりインタラクティブにできるようになる。
- 文脈に合った情報を知らせることができる
- 喫茶店の横を歩いた時に「日本語でコーヒーを注文しようとしていますか」とプッシュが届き、タッチで発音を確認
まとめ
- 時間節約の非常に良い手段となる
- エンゲージメントを高められる
Q&A
自動テストを行うことはできるのか
- 検討してみたい
3D Touchは後方互換制を確保しているが何かラッパーはあるのか
- 使ったことはないけどある
その他このトークに関する情報源
- アプリを新次元に導く3D Touch | try! Swift Tokyo 2017 #tryswiftconf Day1-4 聞き起こし - niwatakoのはてなブログ
- try! Swift 2017 Tokyo に参加してきた - 2. 1日目 - My Favorite Things - Coding or die.
- [速報レポート] try! Swift TOKYO 2017 1日目 午前II #tryswiftconf | Developers.IO
togetter
3D Touch: Bring your apps to a new dimension #tryswiftconf - Togetterまとめ