SONY Smart watchアプリの作り方

Preview:

DESCRIPTION

SONY Smart watchアプリのおおまかな仕組み

Citation preview

SmartWatchアプリの作り方 Vol.1 SmartWatchアプリの仕組み

SONYのSmart Watch便利ですよね

メールを確認したり SNSを確認したり

時計は常時表示で

自作アプリも動く

安い 14,800円 36,540円

軽い 23.5g 82g

長持ち 約3日 約1日

耐久性 防水防塵(周囲温度5℃~35℃、

湿度35%~85%の範囲内でご使用ください。) ほこりや振動の多い場所では使用しないでください。

充電 MicroUSB 専用ドック

端末 Android4.0以上の端末全般 Android4.3以上のGalaxy

ところが

あまりアプリが多くない

SmartWatchアプリを 作りましょう

SmartWatchアプリの仕組み

よくある誤解

SmartWatchってAndroidが入っているんでしょ

入っていません

SmartWatch2は 専用の組み込みOSで動作

Androidアプリが動かないの?

動きません

SmartWatch独自の開発方法?もしかしてC?

Androidアプリで動かします

!?

実はSmartWatchアプリはSmartPhone上で動く

タッチイベント等 SmartPhone上の Androidアプリが計算

描画命令等

SmartWatch アプリ

SmartWatchSmartPhone

SmartWatchはタッチイベントなどをSmartPhone上のアプリに送信する。 SmartPhone上のアプリで計算して描画データをSmartWatchに送る

SmartWatch= シンクライアント

SmartWatch

SmartPhone軽量・安価・低発熱・長寿命

高速だけれど 高くて熱くて

バッテリー食いのCPU

SmartWatch Architecture

スマートコネクト

Host ApplicationSmartExtension

(SmartWatchアプリ)

SmartWatchアプリは正式にはSmartExtensionと呼ぶ SmartExtensionはスマートコネクトやHostApplicationを通じて

SmartWatchと連携する

SmartWatch

SmartPhoneハードウェアとのやり取りを担当

自分たちで実装する部分

ExtensionやNotificationの管理

SmartExtension内の概要

以下の4つのクラスが必須

ControlExtension

ExtensionService

RegistrationInformation

BroadcastReceiverSmartWatch操作時に発行される

BroadcastIntentを受信

SmartWatchアプリは Serviceとして実行される

SmartWatchに係る処理を実行

SmartWatchアプリの情報を スマートコネクトに提供する

以下の4つのクラスが必須

ControlExtension

ExtensionService

RegistrationInformation

BroadcastReceiver

Sony Add-on SDKで提供されるので 継承して実装する

ControlExtension

ExtensionService

RegistrationInformation

BroadcastReceiver

SmartExtension 普通のAndroidアプリ

Activity

むずかしそう・・・

ControlExtension

ExtensionService

RegistrationInformation

BroadcastReceiver

SmartExtension 普通のAndroidアプリ

Activity

普通のAndroidアプリよりは ややこしいけど

基本的にはお決まりパターン 面倒なだけでそれほど難しくはない

スマートコネクト

RegistrationInformationを スマートコネクトに登録

ExtensionService

BroadcastReceiver

EXTENSION_REGISTER_REQUEST

受け取ったIntentを元に Serviceを駆動

インストール時

Host Application

RegistrationInformationを元に HostApplicationと連携

RegistrationInformation

生成

スマートコネクト

Intentを元に処理を行い結果を生成

ExtensionService

BroadcastReceiver

タッチイベントなどを発行受け取ったIntentを元に

Serviceを駆動

操作時

Host Application

処理結果をスマートコネクトやHostAppliationが処理する

ControlExtension

ExtensionService

RegistrationInformation

BroadcastReceiver

SmartExtension

重要なのはこいつ

こっちはほぼ何もしなくていい

次回予告 環境構築とHelloWorld