速報APP / 個人化 / Bitmapキャッチャ

Bitmapキャッチャ

價格:免費

更新日期:2012-06-28

檔案大小:98k

目前版本:1.4

版本需求:Android 2.3.3 以上版本

官方網站:http://d.hatena.ne.jp/tarosay/

Email:tarosa.y@gmail.com

Bitmapキャッチャ(圖1)-速報App

 SmartWatch MN2用のアプリです。LiveWare extension for SmartWatch.

 本アプリ単体では、何も機能しません。

 通常のAndroidアプリから画像情報などを受け取って、SmartWatchに表示するツールです。本アプリが起動していれば、SmartWatch専用のアプリを作らなくても、intentを使用してSmartWatchに画像を転送することが出来ます。

 本アプリは、起動と同時にBitmap画像とバイブレータ制御情報のBroadcastを待ち続けます。画像を送信したい場合は、下記のようなプログラムを作成してください。

ByteArrayOutputStream baos = new ByteArrayOutputStream();

bitmap.compress(CompressFormat.PNG, 100, baos);

byte[] bytebmp = baos.toByteArray();

Intent intent = new Intent("com.luaridaworks.extras.BITMAP_SEND");

intent.putExtra( "BITMAP", bytebmp);

sendBroadcast(intent);

 画面より大きな画像は表示オフセット座標を指定できます。

 Ver 1.1から仕様変更しました。X,Yのオフセット値を個別に設定してください。

intent.putExtra( "OFFSETX", 130 );

Bitmapキャッチャ(圖2)-速報App

intent.putExtra( "OFFSETY", 60 );

 ただし、「受信画像全体を表示する」にチェックを入れた場合は、画像全体が画面に収まるように表示されます。

 バイブレータ情報を送信したい場合は、下記のようなプログラムを作成してください。

Intent intent = new Intent("com.luaridaworks.extras.VIBRATOR_SEND");

intent.putExtra("ONTIME", 2000 );

intent.putExtra("OFFTIME", 500 );

intent.putExtra("REPAET", 2 );

sendBroadcast(intent);

 ONTIME, OFFTIME, REPEATのキーワードで数値をセットしてください。上の例では、2秒間振動し、0.5秒間停止するを2回繰り返します。

 ONTIMEのみの送信も可能です。

 REPAETを 0として送信するとバイブレータは停止します。

 Ver 1.1より、画面タッチ及び画面スィープ結果をBroadcast送信するようにしました。

 よって、各アプリでSmartWatchへのタッチアクションを取得することが出来ます。

Bitmapキャッチャ(圖3)-速報App

 intent-filterに、"com.luaridaworks.extras.TOUCH_SEND" と "com.luaridaworks.extras.SWIPE_SEND" を追加してください。

 BroadcastReceiverでの受信は下記のような感じで受け取ってください。

int action = (Integer)intent.getSerializableExtra("ACTION");

int x = (Integer)intent.getSerializableExtra("TOUCHX");

int y = (Integer)intent.getSerializableExtra("TOUCHY");

int direction = (Integer)intent.getSerializableExtra("DIRECTION");

 direction 0:UP, 1:DOWN: 2:LEFT, 3:RIGHT です。

 Ver 1.2より、センサーの値を取得できるようにしました。

 センサー値を取得するためには、"com.luaridaworks.extras.SENSOR_REQUEST"をBroadcast送信します。これを送信すると、Bitmapキャッチャはセンサーの値をBroadcastで返してきます。

Intent intent = new Intent("com.luaridaworks.extras.SENSOR_REQUEST");

sendBroadcast(intent);

 センサーの値を受信するには、intent-filterに、"com.luaridaworks.extras.SENSOR_SEND"を追加してください。

 BroadcastReceiverの受信は下記のような感じで受け取ってください。

Bitmapキャッチャ(圖4)-速報App

Float x = (Float)intent.getSerializableExtra("SENSORX");

Float y = (Float)intent.getSerializableExtra("SENSORY");

Float z = (Float)intent.getSerializableExtra("SENSORZ");

Ver1.4から画面表示モードをBroadcastで設定できるようになりました。

 送信手順は下記のようになります。

 受信画像全体を表示する場合、

intent = new Intent(\"com.luaridaworks.extras.DISPLAY_SEND\");

intent.putExtra("WHOLE", true);

sendBroadcast(intent);

 受信画像全体を表示しない場合、

intent = new Intent(\"com.luaridaworks.extras.DISPLAY_SEND\");

intent.putExtra("WHOLE", false);

sendBroadcast(intent);

Bitmapキャッチャ(圖5)-速報App

 画面を消す場合、

intent = new Intent(\"com.luaridaworks.extras.DISPLAY_SEND\");

intent.putExtra("SCREEN", 0);

sendBroadcast(intent);

 画面を暗くする場合、

intent = new Intent(\"com.luaridaworks.extras.DISPLAY_SEND\");

intent.putExtra("SCREEN", 1);

sendBroadcast(intent);

 画面を表示する場合、

intent = new Intent(\"com.luaridaworks.extras.DISPLAY_SEND\");

intent.putExtra("SCREEN", 2);

sendBroadcast(intent);

 自動的にスリープする場合、

Bitmapキャッチャ(圖6)-速報App

intent = new Intent(\"com.luaridaworks.extras.DISPLAY_SEND\");

intent.putExtra("SCREEN", 3);

sendBroadcast(intent);

Bitmapキャッチャ(圖7)-速報App