Sony Z-1000 walkman/android 2.3.4 とProcessingでアプリをつくる

研究室でたっちゃんに Sony Z-1000をもらったので,早速いじってみました.とりあえずiOSみたいな感じでアプリを創るにはどうすればよいかと いろいろやってみて,Processing環境がとても楽そうだったので試してみました.環境ですが以下の感じです.

手順は簡単に示すと次のとおりです.

  1. SDKのインストール
  2. 端末側の設定
  3. Processingのインストールと準備
  4. 実行

1.SDKのインストール

http://www.sony.jp/support/walkman/sdk/index.html を参照しました.ここから「Mac環境下での開発構築手順」へいきます.説明にあるようにSDKをまずはダウンロードして,好きな場所に おいてください.次にダウンロードしたandroid-sdk-macosx/tools/ をfinderで開き,android というアプリケーションを起動してください. 端末からでもダブルクリックでもよいです.すると以下のような画面がでるので, Android2.3.3(API10)の中にある SDK Platform, Samples for SDK, Google APIs, Sony Xperia Extensions EDK2.0をインストールしてください.あんまり良く調べてはいないので,中にはインストールしなくて 良い物も含まれているかもしれません.

2.端末側の設定

以上で端末側の設定は完了です.

3.Processingのインストールと準備

まず最新版のProcessingをダウンロードします. http://processing.org/download/. ダウンロードが終わったら,適当な場所に保存(Applicationとか)して,起動します.Processingを起動して,適当な Exampleを開いて下さい.画面がでるだけのようなものでもよいです.下図に示すように右上のJAVAアイコンをクリックして, ANDROIDに変更します.するとandroid sdkの場所を聞かれるので,はじめにダウンロードした android-sdk-macosxの場所を 教えてあげます. 最後に,開発側PCにて,ターミナルを開き,次のとおりにコマンドを実行して下さい.

echo "0x54c" >> $HOME/.android/adb_usb.ini

4.実行

以上で設定は終了です.次の手順を試して,端末上にてアプリケーションが実行できるか確認して下さい. 下のコードをコピー&ペーストして,ProcessingのRunボタンを押します.うまくいくと下図のような結果が端末上で得られます.

void setup() 
{
  size(displayWidth, displayHeight, P2D);
  orientation(LANDSCAPE);
  background(102);
  noLoop();
}
void draw() {
  fill(0);
  text("Hello World, \nI am Tetsuaki Baba.", 30, displayHeight/2);
}

5. 発行用のパッケージをつくる(Dropboxを使ってInstall)

ここまででAndroid上でアプリケーションを動作させることができました.次に作成したアプリケーションをケーブルを接続せずに配布する方法を紹介します. 一番メジャーな方法は Google Store に登録することです.25$かかるらしいので,またおいおい紹介したいと思います.まずは,もっともシンプルな方法で.

パッケージを作成し,それを Dropbox経由でパッケージを参照して,インストールする手順をまとめます.Processingのバージョンがあがると,このあたりを 一発でいけるようですが,現状ではまだそこに対応できていません.そこでこちらである程度手動で行う必要があります.具体的にまとめると次の通りです. ポイントは ant を利用してパッケージをつくることと,そのパッケージに署名を付け加えることです.

  1. Dropbox上にProcessingサンプルを保存
  2. AndroidにUSBケーブルでアプリが動くことを確認
  3. アプリをアンインストール
  4. Processingのメニュー:file -> Export Android Project を選択すると,同じディレクトリに Androidというフォルダが作成される
  5. そのAndroidフォルダに ターミナルで移動する
  6. ターミナルの文字エンコーディングをShift JISに変更(ターミナル->環境設定->設定)
  7. $ keytool -genkey -v -keystore Sample-release-key.keystore -alias sample_user_name -keyalg RSA -keysize 2048 -validity 10000
  8. いろいろ聞かれることに答えてパスワードも設定
  9. 出来上がったSample-release-key.keystore を確認
  10. $ ant release
  11. $ jarsigner -verbose -keystore Sample-release-key.keystore ./bin/Sample-release-unsigned.apk sample_user_name
  12. パスワード入力
  13. 以上の手順で,./bin/Sample-release-unsigned.apk が発行用のパッケージになります.
  14. Android のDropbox アプリから Sample-release-unsigned.apk をダウンロード
  15. ダウンロードが完了するとインストールするか聞かれるので,インストール
  16. アプリが動くようになる

Open Sound Control

oscP5を利用する際,AndroidManifest.xmlの </manufest> の前に <uses-permission android:name="android.permission.INTERNET"/> を記述すること忘れないこと.そうしないとsocket errorになって,通信ができません.

Reference

  1. Sony Walkman Android 開発者向け情報
  2. Ketai Library for Processing Android
  3. oscP5
  4. Android Adventures, part 6: Building a signed .apk from Processing