トップ 最新 追記
RSS feed

ただのにっき


2010-06-08(火) [長年日記]

iPhoneユーザが目の色を変えるAndroidの機能紹介(1) - インテント

あ、なんか釣りっぽいタイトルになってしまった(笑)。

いやね、行く先々で「たださん、Androidどうですか」って聞かれるんだけど、けっこうみんな、Androidのこと知らないんだよ。GoogleがAppleに対抗して作ったiPhoneOSの真似っこにすぎなくて、たいして違わないと思い込んでる(白状すると、おれもそう思っていた)。で、iPhoneとの違いを重点的に説明してあげると、「わー、いいなー」っていう反応がかなり返ってくるんだな*1

というわけで、(だんだん個別に説明するのが面倒になってきたので)ウケのいい機能をいくつかピックアップしてみようと思う。まずはマルチタスクOSの面目躍如、アプリケーション間連携機能「インテント」について。

iPhoneで撮った写真をメールで送るという場面を考えてみる。iPhoneOSは「ユーザの自由度を制限する代わりに適切なデフォルトを与える」という思想で作られているから、カメラで撮ったままの解像度の高い写真をメールに添付すると、有無を言わさず800x600にリサイズする*2。このサイズはなかなか絶妙で悪くないデフォルトだけど、もっと小さい/大きいサイズで送りたい場面はいくらでもあるので、使っているとちょっとずつ不満が蓄積するんだよね。

もちろん画像をリサイズできるアプリはたくさん出ているから、それを使った上でMMSを使って送信すればいい。しかしその手順ときたら:

  1. カメラアプリで写真を撮って
  2. カメラアプリを終了して
  3. リサイズアプリを探して立ち上げて
  4. いま撮った写真を探して選び
  5. リサイズして(保存するのを忘れずに!)
  6. リサイズアプリを終了して
  7. 画像ビューアを探して立ち上げて
  8. いま保存したリサイズ済み写真を探して選び(隣に並んだまったく同じサムネイルを持つリサイズ前の写真と間違えないように注意!)
  9. メール(MMS)で送る

……うわぁ、気が遠くなるね! 特に「探す」作業があまりに多くて苦痛。これならデフォルトで我慢するわ。

Androidだとこうなる。ちなみにおれが使っている画像リサイズアプリはImage Shrink。あとは標準アプリだけを使って同じことをしてみよう。

[スクリーンショット]カメラアプリの内蔵ビューア 1. まずカメラで写真を撮るところまでは同じ。右のスクリーンショットはそのあとカメラアプリ内蔵のビューアに移ったところ。画面下部にいくつかアイコンが並んでいて、左から2番目に「○から矢印が2本出ているアイコン」が見えるだろう。これがインテントの送り先(アクティビティ)を選ぶアイコンで、Androidアプリの多くについている。

[スクリーンショット]画像の受け取り手を選ぶ 2. インテントアイコンを選ぶと出てくるのがこのリスト。これは、画像を受け取ることができるアプリの一覧を示している。そのままメールに添付もできるけど、今回は画像を縮小したいので「Image Shrink」を選ぼう。

[スクリーンショット]Image Shrinkのサイズ選択画面 3. するとその場でImage Shrinkが起動して、サイズを選ぶ画面に。今回は相手の回線事情に配慮して、少し小さめの640x480にしよう。いつも同じサイズに変更する場合は何も聞かずに実行する設定にもできる。

[スクリーンショット]サイズ変更後の画像の受け手を選ぶ 4. Image Shrinkはリサイズを終えるとすぐさまインテント選択画面を表示する。「今リサイズした写真をどこに送る?」と聞いているわけだ。ここではGmailを選ぼう。

[スクリーンショット]Gmailのメール作成画面 5. すぐにGmailのメール作成画面が現れる。写真が添付状態になっているのがわかるだろう。あとはアドレスと本文を入れて送るだけ。

ここまで、写真を「探す(選ぶ)」場面が1回しかなかったことに注目。また、数あるアプリの中から必要なものを探し出すのに、インテント機能によって絞り込まれた一部の中から選ぶだけだったことから、iPhoneに比べて「ものを探す」労力がはるかに少ないのがわかる。

インテントはこのように、アプリが「自分はこの手のデータを受け取れる」という情報をあらかじめ登録しておくことで、OSが送り手とのマッチングをはかってくれる機能だ。画像だけでなくテキストでもいいし、URLでもいい。例えば、メールに貼られたTwitterのURLをクリックするとブラウザでなく使い慣れたTwitterクライアントが起動することもある。

この機能がギークにウケるのは、Unixシェルのパイプ処理のようなツールボックス・アプローチを想起させるからだろう。iPhoneOSで先のようなことを簡単にさせようと思ったら、カメラと画像編集機能とメール送信機能が合体した巨大アプリを作るしかないのだけど(キッチンシンク・アプローチ)、Androidではゆるやかに連携した単機能アプリがシームレスに仕事をしてくれる(ツールボックス・アプローチ)。

リソースが潤沢なPCではiPhoneアプリのような作り方でもいいが、スマートフォンのようにリソースの限られた機械では、どちらが良いアーキテクチャかは言うまでもない。Android 2.2ではこのインテントを、ネットワーク越しにも送れるようになるそうで、これはもうwktkせざるをえない。AndroidはけっしてiPhoneOSの模倣だけしているわけではないのだ。

Tags: android

*1 もちろんおれの知り合いなんてたいていギークなので、そういう方面にウケそうなプレゼンをするからである。iPhoneでゲームばっかりしている向きに差別化ポイントを説明する自信はない。

*2 おまけに800x600より小さな写真は拡大して送ってくれるという親切"機能"付き。MMSでは1024x768で、拡大"機能"はなし。

本日のツッコミ(全13件) [ツッコミを入れる]

Before...

himo [>iOS4からはドキュメントサポートが追加されていて、アプリ側が扱えるファイルタイプを宣言しておくことで、そのファイ..]

himo [>これ間違いでした。 としましたが、間違いではありませんでした。 iPadのOS3.2の「Document Sup..]

ただただし [himoさん、spamフィルタがキツすぎるみたいで、なんどもお手数おかけしました。 少なくともファイルに関しては他..]

通りすがり [インテントについて良くわかりましたw Android側はやはりオープン的な志向がiOSより強い側面があって、PC的..]

and慶周 [Appleはできるけどやらないだけだみたいな信仰はどこから来るのが不思議ですね iOSよりAndroidの優れる点は..]

qwer [>信仰はどこから来るのが不思議ですね おそらくジョブズのカリスマ性からだと思います。 Apple製品は何一つ持って..]


2010-06-07(月) [長年日記]

Android SDKでHTC Desireのスクリーンショットを撮る

[スクリーンショット]ロック画面ですが WWDC基調講演を待ってるのも暇なので(←うそ。日付がかわってすぐに寝た)、Androidのスクリーンショットを撮れるようにした。端末単体でスクリーンショットが撮れないのは、Android最大の失策だと思うね、ホント。

開発をするならEclipseとかも必要なんだろうけど、今回はスクリーンショットを撮るだけなので、Javaの実行環境だけが必要。ま、普通はOOo入れるついでにJREがどこかに入ってるだろう(そうかぁ?)。

続いてAndroid SDKから最新のSDKをダウンロードしてzipを展開。いかにもな感じの「SDK Setup.exe」が出てくるけど、別にセットアップしなくても使えるのでここはスルー*1。toolsの下にあるデバッグ環境「ddms.bat」が目的のファイルである。

そのまま実行しても一瞬ウィンドウが出て終わるだけかも知れないが、それはたぶんJavaの実行環境が見つかってない。ddms.batをメモ帳あたりで開いて、「set java_exe=」を見つけ、そこにjava.exeのパスを書けばいいようだ。ウチのWindows7 64bit版の場合:

set java_exe=C:\Program Files (x86)\Java\jre6\bin\java.exe

で、実行するとDelvik Debug Monitorというウィンドウが立ち上がる*2ので、DesireをUSBでPCに接続。モードは「HTC Sync」。同期を始めようとするけど、Backボタンで中止させる。さっきのDelvik Debug Monitorには、接続されたデバイスが認識されているはず。

あとはCtrl+Sを押せばキャプチャウィンドウが開くので、Saveするなりなんなり好きなように。PNGフォーマットでスクリーンショットが撮れる。いやはや、これはハードル高いなぁ。

Tags: android

*1 言われるままにセットアップをすると数百MBのSDK一式をダウンロードさせられたりするので注意。っておれだそれ。

*2 これでも立ち上がらない場合は、あらかじめコマンドプロンプトを開いておいて、そこにD&Dすると良さそう。

本日のツッコミ(全9件) [ツッコミを入れる]

Before...

ただただし [いろいろ考慮しなくてはならないのはわかりますが、まさにatsushienoさんが書かれているとおり「実現できないとは..]

miyagawa [まさしくスクリーンショットまわりで HTC Sense の脆弱性が発見されてますね。 http://www.toms..]

ただただし [bookmark_thumb1はブラウザのブックマークのためのスクリーンショットが入っているディレクトリなので、なん..]

miyagawa [ファクトリーリセットしても消えないところに保存されているので、人にあげたり中古で売ったりしたら全部(かどうかしりませ..]

miyagawa [それとも、なんでSense UIの問題かわからないってことですかね? " this feature is relat..]

ただただし [ああ、そういうことですか。Desireしか知らないから、あのブックマークがHTCの独自拡張とは知りませんでした。 で..]


2010-06-06(日) [長年日記]

カメラを持って沼津港に出かけたよ

ひさびさに車で日帰り温泉に行くことにしたので、沼津港で昼食をとることに(前回行ったのいつだっけ……と思って日記を探してみたけど見つからなかった)。もちろん先日買ったE-PL1を持って。なかなか外に持ち出して撮る機会がないんだよなー。

かさごの唐揚げ

沼津港で一番(?)目立っている店、丸天の店先に積んである、かさごの唐揚げ。なかなか怖い。

丸天丼

その丸天はデカい棒状のかき揚げが有名だけど、あれを完食する自信はまったくないので、丸天丼を頼んだ。「丸天」の「丼」であって、「丸」の「天丼」ではない。これすら食いきれない。

漁港ぬこ

漁港だから猫は多いはずなんだけど、来るたびに1匹しかおめにかかれない。今日もこいつだけ。何もくれないのがわかっているので、呼んでもシカト。目付き悪い。

茶目湯殿

食事のあとは裾野にある温泉へ。そこの階段にあるロウソクに灯が入ったタイミングで。まだ明るかったけど感度を下げて撮るという技を身につけた。

Tags: camera

トップ 最新 追記
RSS feed