2012年5月21日月曜日

SmartWatchの開発環境

SmartWatchのアプリケーションはどうやって開発するのだろうと思って調べてみました。Sonymobileのサイトに Smart Extension SDK をダウンロードできるページ があるので、これをダウンロードしてきます。が、それ以前に、Androidのアプリケーションを開発するための標準的な環境が必要ですので、Eclipse Android SDK の環境が必要です。Androidの開発環境構築に関してはネット上 や書籍等で様々な情報が手に入ります。
標準的なAndroid開発環境ができた状態で、「Android SDK Manager」を起動して、Android 2.3.3(API10)の中にある「EDK2.0」をインストールします。メーカー・機種依存のSDKなので通常はインストールされていないと思いますが、全選択で行った場合などは既にインストールされているかもしれません。EDK2.0をインストールしたら、「AVD Manager」を起動して、エミュレータを作成しておきます。「新規」ボタンでターゲットにEDK2.0を選択して、あとはスキンなどを適宜選択してAVDを作成しておきます。
先にダウンロードした Smart Extension SDK のzipファイルを解凍すると、PDFファイルと幾つかのフォルダが作成されます。その中の「Code_examples」フォルダの中にTutorialのPDFドキュメントと

  • SampleControlExtension
  • SampleNotificationExtension
  • SampleSensorExtension
  • SampleWidgetExtension

  • SmartExtensionAPI
  • SmartExtensionUtils
という6個のサンプルプロジェクトフォルダが作成されます。
TutorialのPDFをざっと見た感じでは、上の4プロジェクトがアプリやウィジェットのサンプルプログラムで、下の2プロジェクトはそれらで使うライブラリのようです。「SmartExtensionAPI」がSmart Extensionの基本的なAPIで「SmartExtensionUtils」は「SmartExtensionAPI」を使いやすくするためのライブラリのようです。上の4個のサンプルプロジェクトは下の2つの「SmartExtensionUtils」は「SmartExtensionAPI」をライブラリとして利用して作成されているようです。
自分はeclipseを使い慣れていないせいか、こういったSDKやネットで公開されているようなサンプルプロジェクトをeclipseにインポートしようとすると、ほぼ必ずうまくいきません・・・。当然今回もうまくインポートできませんでした。そこで、Android 2.1用のプロジェクトを新規に作成し、ソース(~.java)やリソース、xmlファイルなどを元からコピペしながら、import文やxmlファイル内のパスなどを手で直して、まずは「SmartExtensionAPI」プロジェクトをエラーが出ない状態まで持って行きました。同様にして、「SmartExtensionUtils」プロジェクトも準備しました。
次に「SampleControlExtension」をコピーしつつ、アニメーション表示などの部分をそぎ落として、タッチイベントとスワイプイベントを取得するだけのサンプルを作成してみました。
Youtubeにエミュレータの画面キャプチャをUpしたんですが、なんか、Upされた動画が壊れてますね。ナナメってます。なんでだろう。