8 月
23
2009
2

Androidアプリの実演、または動画撮影する方法

おいらはAndroidあぷぷを運営している事もあって、Android系イベントなどでは「Androidっぽい」アプリ紹介をすることがあるのですが、やっぱりこういうのって、静止画や言葉ではなく、実際に使って動いている所を見てみないと、腑に落ちなかったり、なかなか凄さがわからなかったりするんじゃないかなと思っています。

やっぱり、動画を含む、動くものが伝える事ができる情報量って、凄いと思うんです。

今までの発表では、PCをプロジェクターに繋いでエミュレータで動いている所を見せるか、実機でしか動かないようなものであれば、SDKに添付されているスクリーンショット取得ツール(後述)を他の人に連続取得(ポタン連打)してもらって、そのパラパラマンガ風のスクリーンショットをプロジェクター経由で見せた事がありました。それなりに理解できるようで好評でしたが、やはり人手が必要なのは痛いですね。パラパラマンガといいつつ、更新頻度が低いので動きがわかりづらいし。

Androidの特徴は、開発ツールを含むほぼすべてがオープンソースとして提供されている点があげられますが、上記スクリーンショットを取得できるツールであるddmsというJavaの実行ファイルも、同様にオープンソースで提供されています。

仕組みとしては、PCとAndroidをUSBケーブルで繋ぎ、ddms側から任意のタイミングでスクリーンキャプチャボタンを押すと、Android SDKとAndroid内部のデバック用機能(Android Debug Bridge:adb)が呼び出され、そのときAndroidのスクリーンに映っていたものをpngファイルとしてPC側に送ってくれるような実装がされているようです。

オープンソースで提供されているものなので、該当部分のソースを抜いてきて、スクリーンショットを連続取得するように作り替えれば、PC上でAndroid実機の画面がアニメーションしているように見えるでしょうから、これでプレゼンや動画撮影できるのになぁ、と思っていたら、実際に作って公開されて方がいらっしゃったので、今回はそちらの紹介をしてみたいと思います。(と、ここまで長かったですね)

実際には2つのソフトが公開されているので、両方取り上げてみます。

Android Screen Monitor

一つ目は、Windows向けのAndroid Screen Monitor - adakodaです。

このソフトは、逆引きAndroid入門 を運営されているadakodaさんが開発・公開されているもので、Creative Commons下で利用できるものです。

こちらはWindows用の実行ファイルとして実装されており、上記ddmsのライセンス(apache license)からの干渉も無いように見えるで、ソケット経由でデバック機能を呼び出しているような実装っぽいです。(未確認)

おそらく、Android Screen Monitor(on Windows) <-> SDK添付のadb(on Java with Windows) <-USB-> Android端末のような形で動いているのかなと。(未確認)

実行には、Andorid SDK 1.5 r2以降と、(あたりまえですが)Android端末本体が必要です。SDKのインスートルはZipファイルを展開してJavaやSDK添付ツールへのパスを通すだけなので、比較的楽に使えるのではないでしょうか。

公式ページは英語ですが、書いてある事は簡単なので、試してみてはいかがでしょう。

Androcast

もう一つは、Androcastというソフトです。

Android Screen Monitorと比べると、仕組みも機能もほぼ同じなのですが、こちらはJavaで動いているので、お使いのPCがWindowsでは無い場合でも利用できます。MacやLinux系の場合は黙ってこちらですね。

こちらは上記adbの他に、Andorid SDK 1.5 r2の中に入っているddmlib.jarというファイルも必要となるので、Apache Licenseを採用しています。

Androcast with ddmlib.jar(on Java) <-> SDK添付のadb(on Java) <-USB-> Android端末のような形でしょうか。(未確認)

実行にはJava6のランタイムが必要なので、Java6を使ってない人は入れておく必要があります。

Macな方は、MacOSX 10.5の標準がJava5なので、Java6のインストールを必要とする方が多いように思います。なお、Java6インストール後にJava Preferenceというソフトを使って、起動優先順位を変更後、再起動が必要のようです。(というか普通にアップデートかけていたらインストールはされているはずなので、Java Preferenceで切り替えるだけかも)

さて、どっちがどうよ?

仕組みや機能的にはほぼ同じなのですが、細かい事を言うと、Android Screen Monitorはウィンドウがスクリーンキャプチャ分のサイズとなっており、回転やサイズ変更はキーボードのショートカットを使うような形であるのに対し、Androcastの方はサイズ変更用のボタン類があるために、スクリーンキャプチャのサイズ以上にウィンドウを大きくする必要があります。(結構余白が大きくなってしまう)

これがどこに影響を与えるかと言えば、プレゼン時の見た目の問題もあるでしょうが、どちらかというと動画撮影の際の範囲指定方が効くかなぁと。

PCの画面上の特定エリアを動画として保存できるソフトは複数ありますが、お使いのソフトが範囲指定のためにウィンドウを指定するタイプだった場合、余白も撮影されてしまうのかなと。

まぁ、Windows以外であれば自ずと選択肢は限られますし、どちらでも性能は変わらないでしょうから、好みで良いのかも知れません。

何かのスマートフォン系イベントなどで使われるようになれば、楽しさが伝わるんじゃないかと期待しています!

関連する投稿

Android Market 掲載カテゴリ: 考察 |
8 月
09
2009
9

俺様はこんなAndroidアプリが欲しいぞ! 灼熱のアプリアイデア24連発

まーた、いつもの始まったよと、冷ややかな目でご鑑賞ください。

さて、おいらは日々のニュースやAPIリファレンスなどを見ながら、「お?」と思いついたものを片っ端からメモしていく癖を付けているのですが、Androidに関するアイデアについては、なかなか形にする時間もないし、ここで放出しちゃいます。

権利云々は言わないので、気になるテーマがありましたら作り始めちゃってください。おいらも使いたいので。(お盆休み中に完成しちゃったら最高です!)

なお、既にこの機能をもったアプリがあるのかも知れないのですが、確認できていませんので、良さげなアプリがあったら教えてくださいまし。

その場で記帳アプリ

小規模事業だと会計担当も居ないし、何かを買った時の記帳がかなり面倒。買ったその場で金額と科目を選択し、領収書の写真を添えるなどして、弥生会計と連動する記帳アプリが欲しい。弥生会計はCSV喰えたはず。e-文書法によって3万円以下の領収書は電子化許されたんだよね?(あまり詳しくない)

クラウドと同期されるパスワードマネージャ

URLとユーザ名とパスワード、それにformを特定できるナニカ(IDかユニークな名前かXPass)とユーザ名テキストボックスとパスワードテキストボックスの名前をローカルに保存しておき、SSLなどを使ってクラウドと同期されるようなもの。根本的にはOpenIDなどがいいんだろうけど、結局普及してないよねぇ。

所有者情報を保持するMushroom

ガラパゴスで言う、メニュー→ゼロキーのような、全機種共通の操作性を持った所有者情報を保持し、登録してある情報は必要なときにペーストできるアプリ。Mushroom経由とクリップボード経由がいいな。(MushroomはAppWidgetやブラウザでは使えないので)

Mapsから位置を示すリンクを生成するMushroom

場所を相手に示すのに、住所ではわからなすぎる! ので、地図上で指した地点の緯度経度を取得し、PC用GoogleマップやEzNaviWalkやNaviTime用のリンクを生成して、Mushroom経由またはクリップボード経由で貼付けできるアプリ。(まいむぞうの作りかけの残骸はあるのですが…)

ブラウザのブックマークをGoogleブックマークと同期してくれるアプリ

GoogleブックマークはブラウザやOSに捕われず利用できるので便利だと思うんだけど、Androidのブラウザと同期してくれれば尚更便利。

ガラパゴス互換ブラウザ

ガラパゴスケータイ向けサイトを使えないと何気に不便な事が多いので(特に位置情報データベース系や銀行系)、見た目は変でいいから、Webシステムでも位置情報や端末固有情報を使えるようにブラウザーを拡張する。具体的には、UserAgentを変更可能とし、DocomoやauやSoftbankの実在機種を偽称する。携帯用位置情報送信リンクを判別して、反応したものにはポストパラメーターに緯度経度を含めて送信する。端末固有情報のエミュレーションはSIMから出したハッシュとか。(とか言ってもIPで弾かれてダメか?)

翻訳補助アプリ

まだ翻訳されてないアプリのstring.xmlをネットワーク経由で読み込んで、暇なときに1つや2つでも翻訳を進めるためのヘルパーアプリ。LaunchPadのラッパーみたいな形でもいいのかも。

Amazonヘルパー

本屋さんで目の前の本のバーコードをスキャンし、その本のユーザコメントを表示するためのアプリ。自分のウィッシュリストを表示することも出来る。

上手に空き容量確保支援アプリ

Androidの空き容量確保のためのアドバイザーアプリ。消しても良いキャッシュや、クラウドやSDカードに保存されているなどで復元可能なデータ、使用頻度の低いアプリなどを容量順に教えてくれる。

複利計算用アプリ

電卓ではちとキツいよねぇ。身近に将来設計できるので複利計算(将来価値計算)って大事だと思うんだけど。

名刺管理アプリ

名刺を写真に撮って、アプリ経由でサーバに送ると、サーバ側でOCR処理してvCard形式でデータをもらう事が出来る。そのまま連絡先にインポートできる。名刺の写真はSDカードに入れておいて、文字でフィルタリングして写真で名刺を確認する感じ。サーバ側のOCR処理をどうやって行うかがネック。オープンソースのOCRは実用的なのがないんだよなぁ。誰か商用サービスでもいいからWebAPI公開すればいいのに。

テレビ番組表アプリ

iPhoneにはあるのにAndroidにはないよーorz

現在地の住所を文字列として取得できるMushroom

GPSを使って現在地を取得して、逆ジオコーディングして住所を取得し、Mushroom経由またはクリップボード経由でペーストできるアプリ。AppWedgetならあるんだけどなぁ。

セバスチャンという名前の行動支援アプリ

Googleカレンダーから予定を抜き取って、オフスクリーンでも予定を教えてくれるアプリ。(標準カレンダーアプリでできたっけ?) 名前重要!

自分専用時間割アプリ

15分単位で時間割を作って、必要ならリマインダーを設定できる。曜日毎に繰り返し設定できる。時間割通りに作業できたかどうかを集計していって、達成度を測れる。時間割は自分の生活スタイルを強制させ、習慣付けするのに良いツールだと思うので、習慣づけに最適化する。

位置と連動したお小遣い帳アプリ

レシートもらっておいて、後でちまちま入力するなんてやってらんない! 買い物したら、その場で合計金額を入力して送信するだけ。日時と位置情報を記録し、どこのお店で使ったかを集計する。科目は位置連動で大雑把に。電気屋さんで食品は買わないでしょう。

FTPとテキストエディターが組み合わさったアプリ

FTP経由で入れるサーバ内のテキストを直接編集できるエディタ。またはマッシュアップ可能な組み合わせ。秀丸周辺アプリだと可能なんだけど、これが結構便利なので。(特にWeb屋さんには)

標高計算アプリ

GPSを使って現在地と標高を取得し、マップアプリを使って計測したい位置を指定する。そのあとカメラプレビューを通して頂点位置を指定して角度を計測すると、三角測量で頂点位置の標高がわかる。

電話がつながるまでリダイアルするアプリ

借金取りとか借金取りとか借金取りとか彼女が怪しげな行動をとった時とか鍵を忘れたときに使う。

書評情報交換アプリ

本のバーコードを読んで保存しておき、友達と所有している本の情報を交換できるアプリ。本の評価などを交換できるかも。

アプリへのリンクを作れるMushroom

起動するとアプリ一覧を取得して、どれかを選ぶとAndroidマーケットでそのアプリをダウンロード可能なリンクを生成し、Mushroom経由もしくはクリップボード経由でペーストできる。(まぁおいら用だね)

アプリの再インストールを支援するアプリ

今インストールしてあるアプリをクラウド上などで覚えておいて、ファクトリーリセット時にAndroidマーケットの該当アプリへのリンクを示す事で、再インストールを支援するアプリ。全アプリがSDカードかクラウドにデータを置くようにしてくれるなら、何かおかしくなったときにファクトリーリセットしやすかったり、端末乗り換えが楽でいいよね。

連絡先のデータ交換支援アプリ

連絡先アプリで渡したいデータを選ぶと、vCard形式でエクスポートして、あらかじめ指定しておいた渡し先連絡先にインポートしてくれるアプリ。渡し元と渡し先にアプリをインストールしておいて、中継サーバ上のアカウントを介してvCardをやりとりする。てかGoogleが作りそうだし、やりたい事の割に手間が多いな。でも連絡先のQRコードでは情報量が足りないんだよな。

連絡先に位置情報を埋め込めるアプリ

相手の家を覚えるには住所じゃなくて緯度経度でしょ。緯度経度から住所を逆算すればいい。Googleマップを長押しなどでintentを受け取れると使いやすいな。何かintent発射されてないかな?

もし、これらのアイデアを元にアプリを作られた方がいらっしゃいましたら、コメント欄などにご一報ください。他の人とバッティングしても面白くないでしょうし、良いアプリはあぷぷで紹介させていただきます。(てかネタ元作成に協力くださいw)

関連する投稿

Android Market 掲載カテゴリ: 考察 |
7 月
19
2009
5

Androidケータイを『買う』という事

最近おいらは価格.comのクチコミ板の住人なのですが、先日『長所はなんですか?』というスレッドが立ちました。

おいらは最初返答に困っていたのですが、以下のように考える事で自分もスッキリしました。

ということで、『買う』という行為を中心に、Androidケータイとしての考え方を明確にしてみます。

今までとは考え方が完全に異なるケータイ

そもそも論で『長所はなんですか?』については、ユーザ層で言うと「カスタマイズが効く」ということなんじゃないかと思います。逆に言うと「カスタマイズしないと使えない」と言うか。

Androidの真の価値はプログラマ層にあって、「便利なプログラムを作って配布するのがすごく簡単」な事に尽きると思います。

キーとなるのは「今までとは考え方が完全に異なるケータイ」でしょうか。

ハードを買う

Androidケータイの場合、ハードとソフトを別に考える必要があります。

Androidケータイを買うということの本質は、回線とCPUとメモリとセンサー類を買うと言うことです。PCを買うのと同じですね。

ハードはまだHT-03Aしか無いですが、今後はCPUとかメモリとか搭載されているギミックは何かという事を基準に買うことになると思います。

どこかのメーカーから新型CPUが出たとかってタイミングで買い換えるんじゃないでしょうか。

今は回線規格とロケール情報の絡みで日本で発売されたケータイしか購入対象になりませんが、このへんが解決してくるとスペックと値段で選んで海外から買うこともアリになるんじゃないでしょうか。

今のところ、Androidケータイにおける制限の多くは、CPUの処理能力とバッテリーの容量に由来するところが大きいように感じます。逆にこれが改善されれば評価はがらっと変わるのかなと。

ソフト(OS)を買う

実際の使い勝手を左右するのはソフトですが、広義のOSとしての部分までがAndroidで、その上に標準で付いてくるアプリはオマケです。Gmailアプリなどもオマケと思って構わないと思います。

イメージとしてはWindows 95あたりかな。(標準アプリの使い勝手や全体の完成度的に)

標準では使いにくいので、アプリをたくさんダウンロードしてきて標準のものと入れ替えて使う。Androidは入れ替えて使うことを推奨しているので、その方がしっくりきます。

HT-03Aの発売直後の評価はかなり酷かったのですが、これらは標準アプリでの評価なのかなと思います。ですが、オマケである標準アプリが使いづらいと言っても、それはあまり意味がないんだと思います。実際に、どんなアプリがあるかといった情報がちょっとづつ広がってきて、最近は評価を少し取り戻してきているように思います。(まぁ評価が悪い原因は他にもたくさんあるので微妙ですが)

もっとも、まだ「入れ替えることで劇的に使い勝手が変わるアプリ」は登場してないのですが・・・simeji(IME)ぐらいかな。

アプリの価値は2乗的に加速する

今でもいくつかありますが、インフラ的な部分を埋めていくアプリが増えてくれば便利になると思いますよ。picasa uploaderとかpdf viewerとかバーコードリーダーなどなど。

AndroidはAというアプリの機能をBというアプリから使うことが出来るので、アプリが増えるほど二乗的に便利になると思います。

今は自分も不便なことが多いと思いますが、OSの上で動くアプリは世界共通なので、世界中で色々なキャリアからAndroidが発売されて、アプリを書くプログラマが多くなるほど、そのフィードバックを受けれるのもAndroidのメリットでしょう。イメージ的には、アメリカ人によって作られたアプリが、ヨーロッパのユーザに叩かれて便利になって、日本のユーザがほくほくしながら使う、みたいな。個々のアプリだけじゃなく、インフラ的な部分から便利になっていくので、底上げも効きますね。

「プログラムを作って配布するのがすごく簡単」の効果

「プログラムを作って配布するのがすごく簡単」なので、今は確かに(他の書き込みの表現を借りれば)『ゴミみたいなアプリ(失礼)』が多いですが、そんなのはすぐに飽和して淘汰され、便利で汎用的なアプリが増えてくると思いますよ。

逆に「プログラムを作って配布するのがすごく簡単」を原動力として、ニッチな領域にもアプリが行き渡ったり、同じようとのアプリにも多様化や競争原理が働いたり、メーカー主体ではなくユーザー主体で進んでいったり、新しいモノやバグに対する反応速度が速くなったりと、ユーザにとって好ましい環境が拡大していくのではないでしょうか。

特に、誰のためでもない『自分専用』のアプリを開発したり、ホームページを作る感覚で特定の企業用のシステムを安価に受託開発するなんて分野にはピッタリな気がします。(開発ツールが無料で、既存のJavaの知識が活かせて、Androidが提供するコンポーネントが便利で使いやすいので)

今、HT-03Aを買うという事

良くも悪くも、オープンソース的性格を色濃く持っているので、1発目のこのタイミングで買うのは人柱となる覚悟は必要かも知れませんね。

汎用的に使える「ハード+広義のOS部分を買った」(PC+OSを買った)と思える人じゃないと不満は募る一方でしょう。(その意味でHT-03Aのハード的評価は日本的標準値かそれ以下なんでしょうけど)

今までの「カスタマイズは効かないけどその分完成度はすごく高いケータイ」系列だと思って買うと、後悔すると思います。

遠目に見ると

HT-03Aに対するユーザの評価を見ると「Rachaelスゲー、これ出たらAndroid買うかな」という話をよく見かけるのですが、上記の考え方で行くと「???」という感じです。まぁあの動画のクオリティがAndroid端末で本当に出せたとしたら、CPUやグラフィックス性能はだいぶ高いはずなので、そういう意味では正しい選択かも知れませんが。Heroに対する考えも同じかな。

CPUやグラフィックスやバッテリーの性能を上げるのは、解りやすいセールスポイントになるので、ベンチマークアプリのようなキレイな飾り付けをすれば飛びつく人は多いでしょう。

でも、個人的にはSunの加護を離れたDalvik VMはまだやっと転ばないで歩き出した、という段階だと思うので、まだまだ効率化する余地は残っているように思います。(実際そういう話も聞こえてきています)

『Dalvik VMを採用』という選択はメンテナンスコストがかかるのと引き替えに、他と差別化できるほどの効率化をもたらす可能性があると思います。(現状このメリットは差別化とまでは言えないと思う)

個人的にはここに開発リソースを突っ込んで欲しいなぁ。

関連する投稿

Android Market 掲載カテゴリ: 考察 |

Powered by WordPress | Theme: Aeros 2.0 by TheBuckmaker.com | Background image: licensed under the CC 3.0 License.