Android Instant App
potatotips #40
2017.5.24
株式会社LIFULL 寒川 明好
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。2
自己紹介
• 寒川 明好
– @SamrilRio
– Akiyoshi Samukawa
• LIFULL Co., Ltd.
– LIFULL HOME’S
• Android Development Group
– Engineering Manager
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。3
おかげさまでベストアプリ
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。4
Android Instant Appとは
• インストール不要の Android ネイティブアプリ
• URLの起動に応答してInstant Appが実行
https://www.homes.co.jp/aaa…
今までなら…
アプリを検索
ダウンロード
アプリをつかって検索
詳細を見る
インストール不要
で詳細を見る
Instant App なら…
= ではない
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。5
Instant Appの仕組み
• アプリのフルダウンロードではなく、機能ごと
にダウンロードしてくる
https://www.homes.co.jp/aaa…
CLICK
Instant App Request
Feature .1 Feature .2
URLを解析
Feature .1Instant App
Runtime
Launch
Android App Links
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。6
Instant App対応したプロジェクト構造
• Instant Appはダウンロード時に2つのAPKを受
け取る
– Feature APK
– Base Feature APK
• アプリは機能ごとにモジュール化させる
Feature
APK
Feature
APK
Base Feature
Instant App module
App module
Feature .1
Feature .2
Base Feature
1つのInstant App moduleは4MBまで
※ 4G回線は100Mbps → 転送速度は 12.5MB/s → 4MBのAPKなら 0.32sec
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。7
制限されている機能
• ユーザが気づかないところで実行ができない
– フォアグラウンドは実行できる
• 外部ストレージへのアクセス
– ただし、アプリのプライベートな内部ストレージは利用できる
• 明示的インテント
– デバイス内の他のアプリとの連携ができない
• ブロードキャスト
– ただし、いずれは起動中のInstant Appのみ受け取れるようになる
• ユーザがリセットできない端末情報
– 例)SSAID、シリアル番号、MACアドレス、 IMEI、IMSI
– ただし、広告IDは利用できる
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。8
使えない機能
• 長時間のバックグラウンド処理
• サービス
• ブロードキャストレシーバー
• コンテンツ プロバイダ
• 通知
…ん? コンテンツプロバイダ…だと
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。9
コンテンツプロバイダが使えない!
• データのやり取り DAO が使えない
– 一応 DML は直接発行できるけど、このご時世でSQL直打ちって…
• Realm
Firebase Realtime Database
代替として予想できるのが
※ Identify tested compatible libraries
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。10
Instant Appの導入について
• 約50個以上のアプリがInstant Appに対応
• Instant Appsの対応は4~6週間程度
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。11
感想
• 情報がまだ少ない
– AppIndexing はSEOに影響ある、という話だったけどInstant
Appはどうなるの?
– 一応 Best practices for user experience in an instant app は
あるけども
• Instant Appの導入にはユースケースを決める
必要がある
– ユーザにどんな体験を提供するのか
– どこの機能を使うのか
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。12
おわり
© LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。13
告知
2つの勉強会を予定しています
@LIFULL本社 半蔵門/麹町
2017.05.26 19:30~
Google I/O 2017 報告会
2017.05.31 19:00~
tvOSアプリ開発について

2017/05/24 potatotips #40

  • 1.
    Android Instant App potatotips#40 2017.5.24 株式会社LIFULL 寒川 明好
  • 2.
    © LIFULL Co.,Ltd.本書の無断転載、複製を固く禁じます。2 自己紹介 • 寒川 明好 – @SamrilRio – Akiyoshi Samukawa • LIFULL Co., Ltd. – LIFULL HOME’S • Android Development Group – Engineering Manager
  • 3.
    © LIFULL Co.,Ltd.本書の無断転載、複製を固く禁じます。3 おかげさまでベストアプリ
  • 4.
    © LIFULL Co.,Ltd.本書の無断転載、複製を固く禁じます。4 Android Instant Appとは • インストール不要の Android ネイティブアプリ • URLの起動に応答してInstant Appが実行 https://www.homes.co.jp/aaa… 今までなら… アプリを検索 ダウンロード アプリをつかって検索 詳細を見る インストール不要 で詳細を見る Instant App なら… = ではない
  • 5.
    © LIFULL Co.,Ltd.本書の無断転載、複製を固く禁じます。5 Instant Appの仕組み • アプリのフルダウンロードではなく、機能ごと にダウンロードしてくる https://www.homes.co.jp/aaa… CLICK Instant App Request Feature .1 Feature .2 URLを解析 Feature .1Instant App Runtime Launch Android App Links
  • 6.
    © LIFULL Co.,Ltd.本書の無断転載、複製を固く禁じます。6 Instant App対応したプロジェクト構造 • Instant Appはダウンロード時に2つのAPKを受 け取る – Feature APK – Base Feature APK • アプリは機能ごとにモジュール化させる Feature APK Feature APK Base Feature Instant App module App module Feature .1 Feature .2 Base Feature 1つのInstant App moduleは4MBまで ※ 4G回線は100Mbps → 転送速度は 12.5MB/s → 4MBのAPKなら 0.32sec
  • 7.
    © LIFULL Co.,Ltd.本書の無断転載、複製を固く禁じます。7 制限されている機能 • ユーザが気づかないところで実行ができない – フォアグラウンドは実行できる • 外部ストレージへのアクセス – ただし、アプリのプライベートな内部ストレージは利用できる • 明示的インテント – デバイス内の他のアプリとの連携ができない • ブロードキャスト – ただし、いずれは起動中のInstant Appのみ受け取れるようになる • ユーザがリセットできない端末情報 – 例)SSAID、シリアル番号、MACアドレス、 IMEI、IMSI – ただし、広告IDは利用できる
  • 8.
    © LIFULL Co.,Ltd.本書の無断転載、複製を固く禁じます。8 使えない機能 • 長時間のバックグラウンド処理 • サービス • ブロードキャストレシーバー • コンテンツ プロバイダ • 通知 …ん? コンテンツプロバイダ…だと
  • 9.
    © LIFULL Co.,Ltd.本書の無断転載、複製を固く禁じます。9 コンテンツプロバイダが使えない! • データのやり取り DAO が使えない – 一応 DML は直接発行できるけど、このご時世でSQL直打ちって… • Realm Firebase Realtime Database 代替として予想できるのが ※ Identify tested compatible libraries
  • 10.
    © LIFULL Co.,Ltd.本書の無断転載、複製を固く禁じます。10 Instant Appの導入について • 約50個以上のアプリがInstant Appに対応 • Instant Appsの対応は4~6週間程度
  • 11.
    © LIFULL Co.,Ltd.本書の無断転載、複製を固く禁じます。11 感想 • 情報がまだ少ない – AppIndexing はSEOに影響ある、という話だったけどInstant Appはどうなるの? – 一応 Best practices for user experience in an instant app は あるけども • Instant Appの導入にはユースケースを決める 必要がある – ユーザにどんな体験を提供するのか – どこの機能を使うのか
  • 12.
    © LIFULL Co.,Ltd.本書の無断転載、複製を固く禁じます。12 おわり
  • 13.
    © LIFULL Co.,Ltd.本書の無断転載、複製を固く禁じます。13 告知 2つの勉強会を予定しています @LIFULL本社 半蔵門/麹町 2017.05.26 19:30~ Google I/O 2017 報告会 2017.05.31 19:00~ tvOSアプリ開発について

Editor's Notes

  • #5 Developer Keynoteでステファニーさんが4つのテーマについて話していました
  • #6 リンクをクリックするだけで、Google Play ストア から Instant App の機能をダウンロードできます。 Google Play ストア が Instant App のリクエストを受信すると、URL を解析して、ユーザーがリクエストした機能を判別します。 Google Play ストア は一致する機能を見つけた後、その機能の対応する機能 APK をユーザーの端末に送信します。その後、Instant App ランタイム が機能を起動します。 Google Play ストア が一致する機能を見つけることができない場合、端末の Instant App ランタイム に警告を通知します。 その後、Instant App ランタイム はインテントのブロードキャストをシステムに送信し、URL が処理されます。