20120422 日本androidの会 横浜支部 smartwatch開発

31
SONY SmartWatchアプリ開発 (・・・をはじめよう)

Upload: takuma-mastumura

Post on 24-May-2015

4.708 views

Category:

Technology


6 download

TRANSCRIPT

SONY SmartWatchアプリ開発(・・・をはじめよう)

自己紹介

• 名前:たくまー(@ta9mar)• アプリ開発は趣味。大してできません(´・ω・`)コピペソルジャー

• 横浜の音系開発チーム「横音」所属– 昨年はハンドベルとか作ってました

はじめに

• 大して理解して作ってないので開発に関しては薄く紹介するのみ!( ー`дー´)キリッ

• 発表中、うっかりするとアルファベットの発音がぁゃιぃ感じになりますがスルーで!

SmartWatch MN2とは参考:http://store.sonyericsson.jp/

我らがSonyEricson社謹製の凄くすごい時計。4月に発売 主な機能として、時刻が表示されたりする!あとアプリ動くよ

LiveViewとはなんだったのか

2010年秋冬ぐらいに発売してた。基本SmartWatchと同じコンセプトですが、、、

・2ボタン+上下左右タッチセンサー (タッチパネルではない)

・腕時計アタッチメントをつけると充電端子が ふさがれてしまう致命的な斬新設計

・ソニエリロゴはかっこいいね!

参考:http://store.sonyericsson.jp/

好きだけど!使えなかった!(ノД`)

SmartWatchの使い方

・Market(google Playとやら)からLiveWareアプリのインストール(Xperiaはプリインかも)

・BluetoothでSmartWatch繋いで見る(ペアリング)

・ Market(google Playとやら)からSmartWatchアプリのインストール

出来た!…けどアプリ無いとただの時計(´・ω・`)

・ Market(google Playとやら)からSmartWatch専用/対応アプリをインストール

対応機種はXperia

・Xperia™ arc SO-01C・ Xperia™ acro IS11S、SO-02C・ Xperia™ ray SO-03C・ Xperia™ PLAY SO-01D・ Xperia™ NX SO-02D・ Xperia™ acro HD IS12S、SO-03D※Xperia™ SO-01Bには対応しておりません01Bには対応しておりません。

(4/21時点Xperia Store[sonymobile.jp]より)

Xperiaでよろしく!( `・∀・´)ノ

レイチェル姉さん・・・(ノД`)シクシク

だけじゃないような■Perfect partnersLive with Walkman™Xperia™ activeXperia™ arcXperia™ arc SXperia™ miniXperia™ mini proXperia™ neoXperia™ neo VXperia™ PLAYXperia™ proXperia™ rayXperia™ SXperia™ X10Xperia™ X10 miniXperia™ X10 mini proXperia™ X81Bには対応しておりません。

■Compatibility – other brandsHTC Desire SHTCEvo 3D/ShooterHTC SensationHTC WildfireHTC Wildfire SMotorola DefyMotorola Droid 2/Milestone 2Motorola RAZROrange San FransiscoSamsung Galaxy 5Samsung Galaxy AceSamsung Galaxy FitSamsung Galaxy GioSamsung Galaxy MiniSamsung Galaxy S IISamsung Galaxy SL

(4/21時点sonymobile.com)

ほんとは何でも動くのかも?( ̄ー ̄)

!?

GNも問題ない

大丈夫!みんな大好きGNさんでも動きました!(∩´∀`)∩ワーイ

対応アプリ

SONYMOBILE公式の代表的なもの

・Call handling  電話取ったりかけたり・FindPhone   端末本体から音出して探せるよ・Weather     お天気を表示するよ・MusicPlayer  音楽プレイヤー・Facebook   facebookみたり

 などなど

一般開発者のアプリも増えてきています!

SmartWatchの機能

単体で動くわけではなく、BluetoothでAndroidと通信します

BTでなにしてるの? 画面表示:Androidアプリ側で画面を作成してSWへ転送 操作: SWのタッチ操作をAndroid側へ転送      Broadcastされるのをアプリで受けて処理

つまりSmartWatch用アプリとは、 SmartWatchを制御するAndroidアプリのこと

SmartWatchの機能

SmartWatchアプリの種類

・アプリケーション フル機能使える。スワイプもアプリで取得。 マルチ(ダブル)タッチでアプリを終了。

・ウィジェット ウィジェット表示するアプリ。タッチはアプリで取得可能 スワイプ操作は表示アプリ切り替えで使えない。

Androidアプリと同様に、簡易的な情報表示をウィジェット、ウィジェットタッチするとアプリケーションで起動などもできます

開発準備

①普通にandroidアプリ開発できる環境 1)Eclipse (version 3.6以降) 2)JDK(Java SE Development Kit, version5以降) 3)Android SDK (最新のSDK ToolsとSDK Platform-tools)

②Smart Extension SDK sonymobile(英語)のページからダウンロードする。

 SmartExtension_SDK_version1.0.1.zip http://developer.sonymobile.com/cws/devworld/downloads/download/smartextensionsdkversion10zip

開発準備

SmartExtension_SDK_version1.0.1.zipの中身

 ・Code_examples サンプルコードたち

 ・Developer_docs SmartExtensionAPIリファレンス。

 ・Smartextension_emulator エミュレータアプリ(APK)   ・White_papers 機能特徴など

エミューレータ

SmartWatch実機なしで、アプリのエミュレート可能

APKファイルが入ってるのでそのままインストール > Adb install AhaEmulator_Sony-Ericsson-E-Application-Signing-Live-864f-1.apk

←Controlsがアプリケーション

   Widgetがウイジェット→

ドキュメント

・Developer_docs ドキュメント類は難解。サンプルで慣れてからじっくり見るが良いです

最初に入れたLivewareManagerと機器ごとホストアプリ(今回はSmartWatch Application)が通信し、これがさらにSmartWatch対応自作アプリと通信する。

機器ごとのホストアプリを(AHA:Accesorry Host Application)と記載している

SmartExtention対応製品全般を記載(現在はSmartWatchとSmartWirelessHeadsetPro)SmartWatchで使えないAPIの記載もあるので注意。

その逆もあり。SmartWirelessHeadsetProは表示領域・色が少ない、タッチスクリーンじゃないなどなど

SmartWirelessHeadsetPro

・Bluetooth(A2DP)で音楽聴けるし、通話もできる・Radio聞ける・microSD入って音楽聞ける・アプリ動くけどWidgetは非対応みたい

SmartWatchで慣れておくと、 こちらも簡単に作れるかも?

まだ未発売だし、日本で発売するかも?ですが。。。

サンプルコード

Code_examples/ SampleControlExtension/ アプリケーションのサンプル SampleNotificationExtension/   通知機能のサンプル SampleSensorExtension/      センサーアプリのサンプル SampleWidgetExtension/      ウィジェットのサンプル SmartExtensionAPI/         API群 SmartExtensionUtils/         APIを便利に使うUtil サンプルが4つ。下2つが重要。APIは必ず使うもの。UtilsはAPIのヘルパー。

Utilは必須ではないが便利なので使ったほうが良いですよ

サンプルプロジェクト取り込み

新規androidプロジェクト->外部で取り込む ・バージョンは2.1以上で SampleControlExtensionを指定

SmartExtentionUtilsの取り込み

エラーが出てるはずなのでプロジェクトのプロパティ>android

SmartExtentionUtilsが使われているが解決できていない (´ε`;)こちらも前頁同様にプロジェクトを取り込む。

SmartExtentionUtilsの取り込み

緑チェックがつけばOK ( `д´)bでもまだエラー。SmartExtentionUtilsにもエラーが。

SmartExtentionAPIの取り込み

SmartExtentionUtilsプロジェクト側プロジェクトのプロパティ>android

SmartExtentionAPIが使われているが解決できていない  c(`Д´c)またしても同様にプロジェクトを取り込む。

SmartExtentionAPIの取り込み

緑チェックがつけばOK ( ^ω^ )(SmartExtentionUtilsにもエラーが出てたらリロードしたりすれば消える)

サンプルの依存関係

・エラーが消えてること・/binに.jarができてること (無ければプロジェクトをクリーンしてみる)

SampleControlExtension(サンプルアプリ)

SmartExtentionsUtil(APIのヘルパークラス)

SmartExtentionAPI(API)

依存

依存

・/binに.jarができてること (無ければプロジェクトをクリーンしてみる)

・エラーが消えてること・ビルド時に「android library projects cannot be launched」エラーが出たらproject.propertiesファイルを修正する android.library=false

実行

ウゴイター!

でもなんだこれ(; ・`д・´)…ゴクリ

アニメーションさせるだけっぽいぞ

アプリの設定など

AHA(SmartWatch)から、インストールされている対応アプリ一覧が見れます

個々のアプリを指定して、アプリの有効/無効を設定できます

アプリ設定を行えます。自作の設定画面(Activity)を呼び出すことができます(サンプルだとREADMEしかない画面が出ます)

ここで初回情報入力してもらい、preferenceに保存しておき、次回以降読み出すことでSmartWatch側操作だけ、という使い方ができます

あとはサンプル見て頑張って

基本的にはSmartWatch操作するとAHAがイベントをBroadCastするので、BroadcastReceiverで受けて処理

スワイプ onReceive: com.sonyericsson.extras.aef.control.SWIPE_EVENTタッチ onReceive: com.sonyericsson.extras.aef.control.TOUCH_EVENT画面消し onReceive: com.sonyericsson.extras.aef.control.PAUSE画面出す onReceive: com.sonyericsson.extras.aef.control.RESUME終了  onReceive: com.sonyericsson.extras.aef.control.PAUSE    onReceive: com.sonyericsson.extras.aef.control.STOP

画面表示は128x128のBITMAP(RGB565)を作って転送 ウィジェットは94x94 

アプリ公開

通常のAndroidアプリと同様にマーケット公開します。

「LiveWare TM extension for SmartWatch」を説明文に入れておくと、AHA(SmartWatch)のアプリ検索ボタンから、マーケット検索してくれる。

あ、スクリーンショット取るのがめんどくさいですEmulator使ってキャプチャが楽かな。。。

対応アプリを増やそう

色々なアプリが増えると楽しさ倍増!

  みんなでSmartWatchアプリを作りましょう

      ワーイヽ(゚∀゚)メ(゚∀゚)メ(゚∀゚)ノワーイ

ここで買えますけど...

Sony Ericsson Store限定販売 9,480円Xperia NXとXperia acro HDユーザーは特別価格の6980円 (5月31日まで)

発売日数時間で売り切れ、以降「近日入荷」のまま(´・ω・`)

http://store.sonyericsson.jp/

おしまい

何の機能も無い時計ウィジェットを公開してます

もともと時計なのに時計ウィジェット意味無い(しかもまさかの有料'`,、(' `) '`,∀ 、)

早速、大好評 ★☆☆☆☆ 頂いてます!