android wearサンプルアプリ17連発
DESCRIPTION
Android Wear勉強会#2で発表した内容ですTRANSCRIPT
![Page 1: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/1.jpg)
Android Wear サンプルアプリ17連発
Android Wear勉強会 #2
@napplecomputer
![Page 2: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/2.jpg)
自己紹介
![Page 3: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/3.jpg)
なっぴー @napplecomputer
![Page 4: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/4.jpg)
Wear Shortcut
![Page 5: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/5.jpg)
このスライド独自の表現
![Page 6: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/6.jpg)
電話→mobile
腕輪→wear
![Page 7: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/7.jpg)
01.AgendaData
![Page 8: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/8.jpg)
予定を通知に表示する
![Page 9: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/9.jpg)
![Page 10: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/10.jpg)
![Page 11: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/11.jpg)
• mobileの画面からwearのServiceを利用してwearのみに通知を表示
• wearアプリはServiceだけで成立するが、Actionから通知を消した場合のみ、アニメーション用のActivityを使用
![Page 12: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/12.jpg)
02.DataLayer
![Page 13: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/13.jpg)
撮影した画像を wearの画面に表示
![Page 14: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/14.jpg)
![Page 15: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/15.jpg)
![Page 16: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/16.jpg)
!
• Mobile側からは写真の撮影、写真の送信、Wearのアプリの起動が行える
• Wearのアプリが立ち上がっていれば、Mobileのアプリのログと写真を受信できる
![Page 17: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/17.jpg)
03.DelayedConfirmation
![Page 18: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/18.jpg)
![Page 19: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/19.jpg)
![Page 20: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/20.jpg)
![Page 21: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/21.jpg)
• wearからはアプリを起動できない
• mobileのアプリからwearのアプリを起動する
• ボタンを教えて5秒数える
• 5秒経つと画面が閉じて通知が出る
![Page 22: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/22.jpg)
04.ElizaChat
![Page 23: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/23.jpg)
Elizaとおしゃべり
![Page 24: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/24.jpg)
![Page 25: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/25.jpg)
![Page 26: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/26.jpg)
• Elizaちゃんからはすぐ返事が帰ってくる
• wearのアプリなしで実現
• 通知のRemoteInputのActionで音声入力できる
![Page 27: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/27.jpg)
05.EmbeddedApp
![Page 28: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/28.jpg)
見る必要はありません
![Page 29: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/29.jpg)
06.FindMyPhone
![Page 30: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/30.jpg)
切断検知と電話探し
![Page 31: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/31.jpg)
![Page 32: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/32.jpg)
![Page 33: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/33.jpg)
• wearのServiceでmobileとの接続が切れたことを検知したら通知を出す
• wearでは画面からmobileの音を鳴らしているのではなく、一度通知を出してから通知経由でmobileの音を鳴らしている
![Page 34: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/34.jpg)
07.Flashlight
![Page 35: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/35.jpg)
光るだけ
![Page 36: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/36.jpg)
![Page 37: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/37.jpg)
![Page 38: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/38.jpg)
• 起動すると白い画面が出るだけ
• かと思いきや、次のページをめくるとParty Viewが表示され画面が様々な色に変わる
• 照度調整がないので微妙
![Page 39: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/39.jpg)
08.Geofencing
![Page 40: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/40.jpg)
めんどくさい
![Page 41: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/41.jpg)
![Page 42: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/42.jpg)
![Page 43: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/43.jpg)
• Google Play ServiceのGiofencingを使う
• 座標がハードコードされているのでそのまま動かすと詰む
![Page 44: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/44.jpg)
09.GridViewPager
![Page 45: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/45.jpg)
GridViewPagerの挙動と 実装確認用
![Page 46: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/46.jpg)
![Page 47: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/47.jpg)
![Page 48: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/48.jpg)
10.JumpingJack
![Page 49: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/49.jpg)
はずかしい
![Page 50: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/50.jpg)
![Page 51: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/51.jpg)
![Page 52: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/52.jpg)
• 重力センサーを使ってジャンプをカウント
• 全然反応しない
• 重力センサーのx軸の値を見てる
![Page 53: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/53.jpg)
11.Notification
![Page 54: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/54.jpg)
通知の挙動を確認できる
![Page 55: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/55.jpg)
![Page 56: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/56.jpg)
![Page 57: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/57.jpg)
![Page 58: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/58.jpg)
• mobileとwearの両方から通知を発行できる
• mobileから通知する場合、一度wearのServiceを経由して・・みたいなことは行っていない
• wearには通知を選択するActivityだけではなく、通知に表示するためのActivityも実装されている
![Page 59: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/59.jpg)
超おすすめ!
![Page 60: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/60.jpg)
12.Quiz
![Page 61: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/61.jpg)
![Page 62: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/62.jpg)
mobileとwearを違う人が使う
![Page 63: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/63.jpg)
![Page 64: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/64.jpg)
![Page 65: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/65.jpg)
• mobileで出題して、wearで答える。
• mobileからはリアルタイムで正解がわかる
• すべて終わるとwearに成績の通知が出る
• その場で問題を作ることもできるけど保存できないのでおすすめしません
![Page 66: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/66.jpg)
13.RecipeAssistant
![Page 67: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/67.jpg)
wearでレシピを見る
![Page 68: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/68.jpg)
![Page 69: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/69.jpg)
![Page 70: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/70.jpg)
![Page 71: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/71.jpg)
• 長くてページ分けされている通知をmobileから送って、wearでそれを見る
• 料理の画像を見ることになるので夜中起動してはいけない
![Page 72: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/72.jpg)
14.SkeletonWearableApp
![Page 73: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/73.jpg)
タイマーと通知と 行列ページ
![Page 74: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/74.jpg)
![Page 75: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/75.jpg)
![Page 76: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/76.jpg)
• たくさん入っていて盛りだくさん
• 通知からは、通知からしか行けない画面に行ける
• 通知から行ける画面は縦横にページが広がるページ
• タイマー機能はかぶってる
![Page 77: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/77.jpg)
15.SynchronizedNotifications
![Page 78: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/78.jpg)
wearだけ、mobileだけに 通知を出す
![Page 79: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/79.jpg)
![Page 80: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/80.jpg)
![Page 81: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/81.jpg)
• wearのアプリのServiceを使ってwear
だけ、mobileだけを実現
• 両方に通知を出す実装が雑
• これだけcommonモジュールを実装してた(多分
![Page 82: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/82.jpg)
16.Timer
![Page 83: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/83.jpg)
タイマーだけどアラーム
![Page 84: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/84.jpg)
![Page 85: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/85.jpg)
![Page 86: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/86.jpg)
• ランチャーから起動ではなく、アラームアプリが反応するIntent-Filterを使って、プリインのアラームアプリを起動させようとすると立ち上がる
• ListViewを使っているが押しにくいので向いてないと思う
• Timerがスタートすると通知内でカウントダウンする
![Page 87: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/87.jpg)
17.WatchViewStub
![Page 88: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/88.jpg)
四角と丸で画面を変える
![Page 89: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/89.jpg)
![Page 90: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/90.jpg)
![Page 91: Android Wearサンプルアプリ17連発](https://reader034.vdocuments.net/reader034/viewer/2022042602/5583b9bdd8b42a410e8b4791/html5/thumbnails/91.jpg)
Android Studioでプロジェクト作ると最初からこれ