google glassでできること xe11版 最新開発情報 mirror api & gdk

Post on 06-May-2015

5.371 Views

Category:

Technology

3 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Google Glassでできること 最新開発情報

わかめ まさひろhttp://goo.gl/ViuSzc

わかめ まさひろ@v vakame

GAE

AndroidTypeScript

AngularJSGlass

• Google App Engine!• Android!• Google Apps!などなど、!

Google!技術に特化した会社です!

Google Glassのできること

本講習の内容はXE11に基づきます

Google Glassとは?

Google の開発している メガネ型のウェアラブルデバイス

写真・動画を撮る

\カシャ/

情報を見る

誰かと話す

\話す相手がいない/

外観

http://goo.gl/J4vqo より 旧モデルの説明になります

新モデルは出回りはじめたばかり…?

外観

ディスプレイ視界の右上にサブモニタが 置いてあるイメージです

景色と画面を同時に見るのは 人間には難しいです

外観

タッチパネル

下方向にスライドが AndroidでいうBackキー

外観ジャイロセンサー

センサー類は他にも色々!

外観

上部についてます 長押しで録画

シャッターボタン

カメラ

外観

普通のAndroid端末と同じで

DDMSでスクリーンキャプチャしたりできます

microUSB

電源ボタン(裏

外観

耳の裏がスピーカが来るので 聞き取りにくいです

バッテリー

骨伝導スピーカ(裏

画面表示

画面表示

指や動作で操作• ちょんとタッチでスリープから復帰!• 上むいてスリープから復帰!• スワイプで横方向に画面移動!• タップで選択

後ろにスワイプ 前にスワイプ

声で操作

この画面で Ok, glass から開始

声で操作• ok glass,!

• google!• take a picture!• record a video!• get directions to!• send a message to!• make a call to!• make a video call to!• take a note with!• post an update with!

手でも同じ操作ができます

GDK(Nativeアプリ)で 無限のバリエーション!

スペック• Android ICS (4.0.4) !• 画面解像度!

• 640x360!• 電池容量 570mAh!

• スマホの1/3ぐらい…!• 普通に使うと8時間程度もつ!• 写真・動画撮るともりもり減る

操作早見表起動

上を見上げる!側面タッチパッドを1回触る

キャンセル 側面タッチパッドを下に撫でる

選択 側面タッチパッドを下に撫でる

決定 側面タッチパッドを1回触る

ボイスコマンド 時計の画面 で “ok glass”

写真撮影 “ok glass” の後に “take a picture”

Google Glass FAQ

Google Glassの位置づけ

ブティックのような場所で受け渡し

便利?便利です!

しかし、インターネットに接続されていないとパワー半減です

着けてて疲れない?大丈夫です!

ずっと動画撮ると熱くなって困りはします。

着用できないほどではない

Androidアプリとの互換性GDK (Glass Development Kit) という ツールが最近リリース!

ただし配布ルートはまだない

Androidスマホにある

Playアプリが入っていません

Glass独自のアプリ配信サービスが始まる予定…? #250

プライバシーは?今後の課題です。

撮影する時は音が鳴ります。 ディスプレイも光ります。

http://goo.gl/bCoZp

KickStarterにて

3Dプリンタで 蓋を作った人も

他人の声にも反応する?

します。 ただし、時計の画面の時のみ。

直近のバージョンだと 音声入力できるタイミング増えてるようです

通信方式は?

Glassが自力でWi-Fi。

AndroidでBluetoothテザリング。

Androidには専用アプリがあります。http://goo.gl/pfzc8

道に迷わない?たぶん迷いません。

頭の向きにあわせて地図も動くので、青い線を歩いていけば良いです。

スマホでも同じ事 できますけどね

日本語への対応?

表示はできます。 音声入力は全部英語です。

Googleは日本語の音声入力技術も 持っているので、何かハード的な

制約があるのかも…?

ARっぽく使える?!

現実の何かに 映像重ねたりは難しいです ハード的な制約が…

サブディスプレイが視界の隅にあるだけ

Weak!本当は猫の気持ちいい

ポイントを オーバーレイしたい

頑丈?

箔が剥がれる 折れる

が2大パターン

誰でも開発できる?誰でも開発はできます!

Mirror APIもGDKも一般公開 しかしハードは出回ってません

Google Glassの開発は Google Glassがないと なかなか難しいです

iOSユーザにAndroidアプリを 作らせるのに等しいです

アプリ開発手法

方法?

Mirror API GDK

Mirror API

• 情報配信用のAPI!

• Webサーバ上で動作する!

• Google Glass上で直接動作しない

GDK• Glass Development Kit!

• Androidアプリが書ける!!

• GlassらしいLook & Feel!!

• Card(後述)が表示できる!!

• LiveCardも作れる!

どちらがいいの?• 静的コンテンツの配信!

• →Mirror API!• インタラクティブなアプリの作成!

• →GDK!• 迷ったら…!

• →とりあえずMirror API

Mirror APIのできること

Glassware とは?

↓ Glass アプリのこと

アンケート

• Android開発できます!!

• Webアプリ開発できます!!

• on Webサーバ!!

• on ブラウザ!

アンケート

• Android開発できます!!

• Webアプリ開発できます!!

• on Webサーバ!!

• on ブラウザ!即座に開発可能!

構成

apkも使えますが配布方法がない

GoogleServer

Glassware Server Glass

apk install

要点

Web屋さん 大活躍の時!

GoogleServer

Glassware Server Glass

RESTful API

逆に考えると ブラウザからGlassの全機能を 利用できるとも言える

必要な知識

Mirror API以外のGoogle APIで練習する

と良いです

• Webサービスの作り方!

• OAuth2周り!

• AccessTokenの取得 & scope など!

• GoogleのAPIの使い方!

• Cloud Console!

• API Explorer

Reference曰く…

• Timeline!

• Subscriptions!

• Locations!

• Contacts4つ!

Timeline

Timeline

概念図です!

↑ 時計が基準 ←新しい  古い→

↓Glass上ではこの単位で表示

メモ

↓ピン留めされたカードは更に左に

Timeline

メモ

↓sub timeline

←ドッグイア

タップで潜る スワイプダウンで戻る

Timelineが行うこと• ユーザの作成したアイテムの表示!• ユーザに情報の配信を行う!

• テキスト・HTMLの配信!• 利用できるHTMLタグは限定的!• JavaScript・音声・動画はダメ!

• 画像・動画の配信!• ユーザのリアクションを受ける

ユーザによるアイテム\take a picture/\record a video/

\take a note with/

GoogleServer

Glassware Server

ユーザが望めば 後述のSubscriptionsを使って

Glasswareに通知できます

ユーザへの配信• HTML, テキスト, 画像, 動画 など!• 公式にPlaygroundがあります!!

• 雰囲気をつかむのに最適!• http://goo.gl/L4t6y9

PCのWebブラウザで使える

CSSも配布されています!

ユーザへの配信• 複数ページに渡るアイテムも配信可能です。!• Gmailの場合

ユーザのリアクション• 配信時にメニュー設定を行う!• Subscriptions経由で通知が来る!

• REPLY, REPLY_ALL!• DELETE!• SHARE!• READ_ALOUD!• VOICE_CALL!• NAVIGATE!• TOGGLE_PINNED!• VIEW_WEBSITE!• PLAY_VIDEO!• CUSTOM

全てのリアクションは Subscriptionsを使って、

Google Server経由で 伝わってきます。

つまりリアルタイム性は低いです。

Subscriptions

更新通知のAPIです

Subscriptions • 事前指定のURLにコールバック!• 2種類あります!

• Timeline の挿入・更新・削除!• Locations の挿入・更新・削除!

• 注意点!• 登録時に自システム固有のuserTokenを指定していないと誰についてのコールバックか判別できない

Locations

Locations

• 位置情報が取れます!

• 過去の位置情報が時系列で取れる!

• 最新の位置情報のみも取得可能

10分間隔で 新しい位置が更新されます

Contacts

Contacts

• だいたいアドレス帳みたいなもの!

• 単体の何か(人物)!

• グループ!

• Glassware もここに表示される

アプリも人も同じ

That’s all

あなたは Mirror APIの

全てを理解しました

GDKのできること

アンケート

• Android開発できます!!

• Webアプリ開発できます!!

• on Webサーバ!!

• on ブラウザ!少しの予習で 開発着手可能!

Glass Development Kit • Google Glass用ネイティブアプリ開発が行える開発キット!

• GlassらしいUI, Experienceに!

• Android SDK+α!

• Voice Trigger 利用可能!

開発手法 • Static Card!

• Mirror APIと似た表現が簡単に!

• Live Card!• 動的なコンテンツが作成可能!

• Immersions!• 没入感のある体験!

Static Card

• ようするに普通のCard!

• Mirror APIでいいじゃないか!!

• Static Card以外のものと組み合わせるパターンがあるかも…!

• 作るのは非常に簡単

Live Card • 時計の左側に常駐する!

• Serviceを作って動作させる!

• Low-Frequency Rendering!• 何秒かに1度画面更新をする!

• High Frequency Rendering!• 1秒に何回も画面を更新する

Live Card (Low Frequency)

• 低頻度描画!

• RemoteView を使うのでその制限を受ける!

• 使えるViewの種類が限られる

Live Card (High Frequency)

• 高頻度描画!

• SurfaceHolderを使う!

• 高速だけどViewは使えない

Immersions

• 普通のAndroidアプリのこと!

• アプリ閉じたら消えちゃう!• 明示的にユーザが操作するアプリに向いている

デモ • 拡大鏡アプリ (拙作)!

• Immersions で実装!• 当初 Live Card(High Frequency)で制作するが挫折!• #286 として報告!

• まだまだ発展途上!• #232 , #287 両方カメラ周り

WORD LENS • http://questvisual.com/!

• カメラ画像中の英文を翻訳

開発ガイドラインhttps://developers.google.com/glass/guidelines

Glassのためのデザイン

• Google Glassは既存のモバイルプラットフォームとは違う!

• GlasswareはGoogle Glass専用に作ろう!

• テストもかならず実機上で行おう

邪魔をしない

• あるべき時に起こることをユーザは望んでいる!

• 頻繁であったり、期待に反する通知をしないようにする!

• ユーザが通知を無視しても問題ないように作る

ナイスタイミング!

• 最新の情報を小気味よいサイズで届ける!

• ユーザの反応にも、予測可能なタイミングで、タイムリーに行う

びっくりを避ける

• どのプラットフォームでも言えることですが、ユーザの期待しない動作で驚かさないこと!

• 何かをユーザに変わって行う前に、明示的に許可をとること

デザインガイドライン

http://goo.gl/yqLZu推奨されるデザインについての

記述があります。 画像素材の推奨されるサイズも。

Google Glassとアップデート

月1 Version Up • XE5 → XE11 まであがっている!

• eXplorer Edition の略?!• XE6!

• ビデオストリーミング再生対応!• 写真共有時にキャプション追加!

• XE7!• 共有先を明示的に登録しなくてよくなった

月1 Version Up • XE8!

• Glasswareでボイスコマンドを受けられるようになった!• Take a note with... !• Post an update... !

• WebSiteを開けるようになった!

• アイテムにURLを添付できる

月1 Version Up • XE9!

• XE6で追加されたビデオのストリーミング再生のやり方が変わった!

• 古い方法はdeprecatedに!

• ビルトインのアクションの表示名が変更できるようになった

月1 Version Up

• XE10!

• Timeline itemがURLを持つ時自動的にリンクに変換される!

• シェアする時にキャプションをつけてもらえるようになった

月1 Version Up • XE11!

• GDKのサポート?!

• Voice Trigger のサポートと言い換えてもいい!

• VIEW_WEBSITEが使えなくなった!• 今後はOPEN_URIを使う

Mirror API 開発事例

Third Party • The New York Times!• Path!• Facebook!• Twitter!• ELLE!• Evernote!• Tumblr!• CNN Google I/O 発表時

作り • 向いている!

• 友達に写真をシェアする!• 稀に興味あるの情報が送られてくる!

• 向いていない!• 頻繁にくる通知(1分に1回とか

Twitterの場合、

mentionとDMのみ通知がきます

Glass Tasks

弊社製Glasswareです

機能

• Google Tasks と連携!

• Google Glass上にタスク表示!

• Google Glassからタスク登録!

• 最寄りのタスクがあれば通知Mirror API Only!

コンセプト ✓原稿を書く!

✓牛乳を買う (スーパー)!

✓同僚に1000円返す (会社)

チェック & タッチで消化

ok, glass. take a note with Glass Tasks. Buy a milk!

音声でタスク登録!

コンセプト

自宅

スーパー

猫カフェ

会社

牛乳!一部タスクは場所に 依存します!

利用方法

他 Webブラウザ

利用方法 タスク一覧

タスク完了

CUSTOMアクション

利用方法 タスク一覧

ピン留め

ピン留めすると時計の左側に 常時表示できます。

利用方法

タスクに設定された緯度経度の近くを通ると通知がきます。

そのままナビゲートもできます。

構成

+on

GAE/Java

Mirror API & Tasks APIand

必要な権限• OAuth2認証!

• https://www.googleapis.com/auth/userinfo.profile!• ユーザ情報取得!

• https://www.googleapis.com/auth/glass.timeline!• GlassのTimelineの操作!

• https://www.googleapis.com/auth/glass.location!• Glassの位置情報の取得!

• https://www.googleapis.com/auth/tasks!• タスク情報の書込!

• https://www.googleapis.com/auth/tasks.readonly!• タスク情報の読込

ユーザ登録時処理• ユーザ情報の取得!• Subscriptions 2種の登録!

• ノートの追加!• 位置情報の取得!

• ボイスコマンドを受け付けるContactの追加!

• Timelineにタスク一覧を表示!

Subscriptions コールバック• 本アプリでは3種類の通知に対応!

• タスクを完了にする通知!• 新しいタスクを起こす通知!• 位置情報アップデートの通知

上2つがTimeline Itemの通知

下1つがLocationsの通知

定期処理

• 3時間に1回 タスクを読込みTimelineのItemを更新する

Tasksの更新があったら

Callbackが欲しいです…

ソースコード

お問い合わせください! 弊社から提供も可能です。

https://tg-glasstasks.appspot.com/

まとめ

• AR(拡張現実) ではない!

• Google Glassは気の利いた情報を摂取するためのもの!

• Mirror API と GDK で今すぐ開発着手可能!

ご清聴ありがとうございました。教育請負や技術コンサル 受託開発の依頼承り〼

www.topgate.co.jp/contact

top related