ページ

2011年5月29日日曜日

Android 携帯画面のスクリーンショット(画面キャプチャ)撮影方法 - 2

前回は 『Android 携帯画面のスクリーンショット(画面キャプチャ)撮影方法 - 1』 という記事を書きましたが、Xperia では画面が赤くなってしまうという症状に見舞われました。
そこで、この画面が赤くなってしまう事に対する解決策を今回はやっていきます。

まずは google 先生に聞いてみまして、参考にしたのは、[S-MAX] ドコモスマートフォン「Xpeir arc SO-01C」で画面キャプチャを撮影する方法を紹介という記事になります。

こちらによると 「Android Screen Monitor」 を利用して解決されたことが書いてあります。
そうして 『Android Screen Monitor』 を利用するには、以下の条件を揃える必要があるそうです。

1) Java Runtime Environment(JRE)、または、Java Development Kit(JDK) 1.5以降をインストールし、bin ディレクトリへパスを通す

2) Android SDK 1.5 以降をインストールし、tools ディレクトリ、(Android2.2以降の場合)platform-tools ディレクトリへパスを通す

3) Xperia arc SO-01Cをパソコンに接続し、PC Companionをインストールして、USBドライバを導入する

4) Xperia arc SO-01Cの本体でメニューキーを押し、「設定」→「アプリケーション」→「開発」にて「USBデバッグ」にチェックを入れる

5) Android Screen Monitorのサイトから「ASM_2_20.zip」をダウンロードおよび解凍して、「asm.jar」を実行する

引用元: ドコモスマートフォン「Xpeir arc SO-01C」で画面キャプチャを撮影する方法を紹介 - S-MAX

そして "DDMSで赤い画面まで辿りついている人は、上記の1)~4)については実施済みということになり、5)のみを行えばOKです。" と書いてあるのですが、私は 1.2 において環境変数のパスを通してないので、まずは JDK と SDK 環境変数のパスを通します。
環境変数のパスの通し方は[JavaDrive] PATHの設定を参考にしました。
こちらに書いてあるように [Path] 欄の最後に

;C:\Program Files\Java\jdk1.6.0_25\bin;C:\Program Files\Android\android-sdk\platform-tools
を追加してやりました。

何れも済ませておらず、これから始める方は

1.JDK(Java Development Kit) のインストール
2.Android SDK のインストール
3.Android 携帯画面のスクリーンショット(画面キャプチャ)撮影方法 - 1
4.Android 携帯画面のスクリーンショット(画面キャプチャ)撮影方法 - 1

を参考になさってみて下さい。

それでは端末で [USBデバッグ] にチェックを入れ PC と USB で接続して "5) Android Screen Monitor のサイトから「ASM_2_20.zip」をダウンロードおよび解凍して、「asm.jar」を実行する" にいきます。
解凍した asm.jar はどこに置けば良いのですかね? デスクトップでも構いませんしどこかへ置いて下さいw
因みに使い方は

使い方

1.Android 端末(実機、またはエミュレーター)を起動する

2.実機の場合、Android 端末と PC を USB ケーブルで接続する

3.ダウンロードした Android Screen Monitor(ASM) のディレクトリで、コマンドプロンプト(ターミナル)から 「java -jar asm.jar」 を実行する

4.デバイス選択画面で、任意のデバイスを選択すると、Android 端末の画面が PC 上に表示される

 ※画面を右クリックすることで、「デバイス選択」「画面方向切り替え」「拡大縮小」「pngファイル保存」を選択することができる

 ※環境によっては、CTRL + P(縦画面), L(横画面), 5(50%表示), 7(75%表示), 1(100%表示), 0(150%表示), 2(200%表示), S(保存) のショートカットキーが使用可

 ※Xperia arc など、DDMSでキャプチャした結果、黒色のピクセルが赤色ピクセルに見える端末では、「Adjust Color」を選択すると改善される場合があります

 ※ Ver.2.30 では、「java -jar asm.jar -a」 で起動すると、常に「Adjust Color」オンで起動できます

引用元: Android Screen Monitor - adakoda

と書いてありますが、私は良く読まずに asm.jar をダブルクリックで立ち上げてしまいました…
それでも、何事も無く立ち上がり(よかった)以下の画面が開きます。

asm1

デバイス選択画面が表示されますので、表示されたデバイスを選択し [OK] を押します。

asm2

上記画面のようになるので、まず右クリックで [Zoom] - [50%(お好きな倍率に)] を選択。

asm3

次に上記画面のように、右クリックで [Adjust Color] を選択。
すると

asm4

おおぉ!端末と同じ画面になりました!
画面を画像として保存するには、右クリックして [Save Image] 又は Ctrl+S で可能です。
これで携帯画面のスクリーンショット(画面キャプチャ)撮影できるようになりました!

『Android Screen Monitor』の開発者である Adakoda さんと [S-MAX] さんに感謝です!

Android 携帯画面のスクリーンショット(画面キャプチャ)撮影方法 - 1


前回の記事までで android apprication を開発するための下準備が整いました。
その後は購入した はじめてのAndroid2プログラミング の本を読み、書かれているサンプルプログラムをちょっとづつ勉強しています。
それらのサンプルプログラムなどを記事にしてみてもいいのかもしれませんが、やはり実際に実用的なアプリを作成できる段階になったら記事にした方がいいのではないか?という気もしています。

でもそれではブログに随分間が空いてしまう…。

そこで自分が使用しているアプリなどの紹介などもしていこうと考えましたが… Android 携帯画面のスクリーンショット(画面キャプチャ)撮影するのには、やはり簡単にはいかないようでして… あい。
ということで、Android 携帯画面のスクリーンショット(画面キャプチャ)撮影方法を紹介してみようと思います。

まず google 先生に聞いて参考にしたのは、[to-R] Androidの画面キャプチャを撮るという記事になります。

こちらによると Android 携帯画面のスクリーンショットを撮影するためには、Android SDK を事前にインストールしておく必要があるそうです。
私的には Android SDK を事前にインストール済みなので次に進みます。
これからインストールされる方は、Android SDK のインストールの記事でも参考になさって下さい。
私も [to-R] さん同様 Xperia を使っていますので、厳密にいえば Xperia 画面のスクリーンショットの方法となりますかね。

まず最初に Android 端末と PC を USB ケーブルで接続します。
Xperia の場合は [PC connection ソフトウェア] のダイアログが表示されますので、[インストール] を押して USB ドライバをインストールします。
もしくはスキップして初めて USB 接続した場合、パソコンでは新しいハードウェアとして認識されますので以下の画面が現れます。

cap1

こちらの [ドライバソフトウェアを検索してインストールします] をクリック。
すると以下の画面に変わり、ドライバをインストールします。 ちょっと時間が掛かりました。

cap2

cap3

ドライバをインストールが終わったら Android 端末 の [メニュー] - [設定] - [アプリケーション] - [開発] - [USBデバッグ] にチェックを入れます。
すると [USB デバックを許可します…] のダイアログが表示されるので OK を押します。
ステータスバーにドロイド君が表示されます。

cap4

それから android SDK のインストール先の [tools] - [ddms.bat] を開きます。
インストール先がデフォルトの場合 " C:\Program Files\Android\android-sdk\tools\ddms.bat " になります。
すると下の画面2つが開きます。

cap5

cap6

[Dalvik Debug Monitor] の現在 Online になっているデバイスを選択して、上記図にあるように、メニューの [Device] - [Screen Capture...] を選択します。
すると

cap7

のわっ!なんだ!なんで赤いんだ! でもこれは Xperia の症状らしく他のキャリアでしたらここまでで大丈夫?かもしれません。
ということで Xperia 編、続きは次回 『Android 携帯画面のスクリーンショット(画面キャプチャ)撮影方法 - 2』 へ続きます。
引っ張ってごめんなさい…

最後に、もし端末を取り外す際は現在使用中で取り外せませんとでるので、タスクマネージャーで "adb.exe" を終了させると取り外しが可能になります。

2011年5月27日金曜日

Androidアプリから情報流出の恐れ、99.7%の端末に影響 - ITmedia

ご存知の方もいらっしゃると思いますが、2011年05月18日のニュースになりますが、RSS でこんな記事を見つけました。

ソース元は、[ITmedia] Androidアプリから情報流出の恐れ、99.7%の端末に影響になります。

米GoogleがAndroid搭載端末で提供しているカレンダーアプリケーションや連絡先アプリケーションの情報が暗号化されないまま転送され、他人に情報を傍受されたり、改ざんされたりする恐れがあることが明らかになったと、ドイツの研究者が発表した。Androidを搭載したスマートフォンの99.7%がこの脆弱性の影響を受けるとしている。

~ 中略 ~

研究者は実際に、Androidのバージョン2.1/2.2/2.2.1/2.3.3/2.3.4/3.0を搭載した端末と、ネイティブのGoogle Calendar、Google ContactsおよびGalleryの各アプリケーションに対して攻撃を仕掛ける実験を実施した。その結果、Android 2.3.3までのバージョンでは、CalendarとContactsアプリケーションのリクエストがHTTPを介して暗号化されないまま送信されていることが判明し、authToken攻撃に対して脆弱であることが分かった。

~ 中略 ~

開発者側の対策としては、ClientLoginを使っているアプリケーションと同期サービスで直ちにHTTPSを経由するよう切り替えるか、よりセキュアな認証サービスのOAuthに切り替えることを提言。ユーザー側ではAndroid 2.3.4へのアップデート、公衆無線LANに接続する際の自動同期設定を無効にするなどの対策を挙げている。

引用元: Androidアプリから情報流出の恐れ、99.7%の端末に影響 - ITmedia エンタープライズ

とありまして、ダメじゃん、Xperia arc (android 2.3.2) … orz

対策方法として「Android 2.3.4へのアップデートをする」とありますので、早速ダメ元でソフトウェアの更新をしてみましたが、「最新です」となりまして。 そ~ですよね~~。

ならば手動でと google 先生に聞いてみると、「bootloaderのアンロック」が必要らしく、これをやるとメーカーの保証が効かなくなってしまうらしいのですねぇ。
カスタマイズされている方は、「bootloaderのアンロック」をして root権限を取りカスタマイズされているようなのですが、買ったばかりだからな~。
諦めました… TAT

早く公式で Android 2.3.4へのアップデート を行って欲しいものです。

関連記事として、[NEVER] まとめ Androidアプリ情報流出の影響とは【99.7%の端末に関係するおそれ】にてまとめてあったりもしますので興味のある方はご覧になって下さい。

2011年5月22日日曜日

AVD (Android Virtual Device (エミュレータ)) の表示サイズを変更する

前回の記事ではサンプルのビルドと実行までを試してみましたが、今回は 前回躓いた箇所 AVD (Android Virtual Device (エミュレータ)) の表示サイズを変更する方法について書いてみようと思います。
前回の記事内で AVD を [Start] させ、[Lunch Options] 画面にて [Scale display to real size] を変更しないまま走らせてしまうと、PC の画面サイズからはみ出す、更に [Luncher icon] も隠れて表示されなくなるという不幸に見舞われます…
前回は何事も無くすんなり上手くいったように書いてありますが、実は躓き、google 先生に助けを請いました。

まず [Lunch Options] 画面にて [Scale display to real size] を変更しないまま走らせてしまった場合どうなるか?を書いてみます。

newp11

newp12

そうすると、AVD が以下のようになってしまいます。

newp16

ウィンドウ下部が切れてしまい [Luncher icon] も隠れて表示されなくなってしまいます。
同様の現象は、Eclipse にてプロジェクトを [Run] アイコン(緑の丸に白三角)を押した場合にも起こります。

ですから解決策としては、二度目以降 AVD を立ち上げる時は、Eclipse 上部メニューの [Window] - [android SDK and AVD Manager] と手動で起動し、[Lunch Options] 画面にて [Scale display to real size] を任意のサイズに変更することが必要のようです。
大したコトではありませんが、一応失敗談でした。

2011年5月21日土曜日

新規のプロジェクトを作成する


購入した はじめてのAndroid2プログラミング の本を参考に進めていきます。

前回の記事より随分間が空きましたが、Android のアプリを開発する開発環境が整いましたので、今回は Eclipse で新規プロジェクトを作成し、Android AVD を表示するところまでやってみようと思います。
ただし、新規プロジェクトとは書きましたが、本にあるように、サンプルのビルドと実行までが実際のところとなります。

まず Eclipse を立ち上げます。

newp1

画面上部のメニュー [File] - [New] - [project...] をポチ。
すると下の [new Project] 画面が出ます。

newp2

[Android] - [Android Project] を選択し [Next] ボタンをポチ。
すると下の [New Android Project] 画面が出ます。

newp3

この画面にて下の画像にあるように [Create project from existing source] にチェックをして、[Browse...] ボタンを押しサンプルフォルダを参照します。
本では "android-9" フォルダ内の "ApiDemos" を参照するのですが、見つかりません… 私のインストールした android-sdk r10-windows には含まれていないんですかね?
AVD manager で確認してみると "SDK Platform Android 2.3.1,API 9,reversion 2(Obsolete)" となっていますし…。
で、まぁまぁこんな時は 2.3.3 でということで、"android-10" の "ApiDemos" を参照してみました。
[Location] は "C:\Program Files\Android\android-sdk\samples\android-10\ApiDemos" になり、[OK] ボタンをポチ。

newp4

元の画面に戻り [Bild Target] の "Android 2.3.3" を選択し、[Finish] ボタンをポチ。

newp5

Eclipse 画面に戻ったら以下の画像の赤丸で囲ったアイコンを押します。

newp6

すると [Run As] という下の画面が出ます。

newp7

"Android Apprication" を選択し [OK] ボタンをポチ。
んん? [Android AVD Error] 画面がでてきました。

newp8

このプロジェクトに対して互換性のあるターゲットが見つからないという表示だそうで、初めて起動する際にはでてくるそうです。
構わず [Yes] ボタンをポチ。
すると [Android SDK and AVD Manager] 下の画面が開きます。

newp9

ここで [New...] ボタンをポチすると下の画面 [Create Android Virtual Device (AVD)] になります。

newp10

ここで [Name] を名付け [Target] と [Skin] を選択します。
[Name] は本にあるように "myAVD" にしました。
[Target] は先に選択したように "Android 2.3.3 API Level 10"。
[Skin] は、私は Xperia arc を使っているので "WVGA854" にしてみました。
それから下にある [Create AVD] ボタンをポチ。
すると [Android SDK and AVD Manager] の画面に戻りますので、今作成した "myAVD" を選択し、右にある [Start] ボタンをポチ。

newp11

[Lunch Options] 画面が出てきます。

newp18

ここはそのままでも大丈夫なのですが、あとで痛い目というか面倒なこと(PC画面内に収まらない)が起こるので、[Scale display to real size] にチェックを入れ、[monitor dpi:] を変更しておいた方が良いと思われます。
今回は [Scale:] が 80% になるように "260" を入力しました。
そうして [Lunch] ボタンをポチ。
すると 3,4つウィンドウがポップアップして、ADK 画面が立ち上がります。
操作できる状態になるまで結構時間が掛かります。
以下の 3つの画像の順に変化いきます。
初めて起動する際には上手く動かない場合もあるそうでして、そうした場合は一度閉じて、もう一度立ち上げると上手くいくようです。

newp22

newp23

newp24

この読み込み時間の間に [Android SDK and AVD Manager] を閉じると [Andoriod Device Chooser] という画面が表示されます。

newp13

作成した仮想デバイスを選択して、デバイスの [Status] が "Online" になってから [OK] ボタンをポチ。
そうこうしていると AVD が先にもあげた下の画面になると思いますので、

newp24

左の鍵の部分を右側にドラッグするとロックが解除されて、下の画面になります。

newp19

これで終わりなのですが、折角 [API Demos] のサンプルからここまできたので、ちょっと中身を覗いてみます。
[Luncher icon] をクリックすると以下の画面になります。

newp20

ここで赤枠で囲んだ [API Demos] をクリックすると以下の画面となります。

newp21

こちらの項目を見ていくと、Android で作成可能なアプリケーションに標準的なユーザーインターフェースのほぼ全貌を見ることができるそうです。
開発する前に一通操作を試しておくと勉強になるそうです。
えと、[Graphics] - [CameraPreview] には気をつけて下さい。横画面になったまま戻らなくなりますw

2011年5月4日水曜日

ADT のインストール

購入した はじめてのAndroid2プログラミング の本を参考に進めていきます。

前回は、Android SDK インストールしましたので、今回は ADT(Android Development Tools)プラグイン(Androidの開発に必要なプラグイン)のインストールをおこないます。
ADT は、Eclipse の機能を拡張して Android のアプリ開発に適合させるもので、Eclipse 上で Android アプリを開発する時には不可欠のもののようです。
プロジェクト作成・ソースコード・リソースファイルの編集・ビルドして実行するところまで、ADTの機能が発揮されるそうです。スゴイですね。

ADT は Eclipse のプラグインとしてインストールするらしいので、まず Eclipse を立ち上げます。

adt1

画面上部のメニュー [Help] - [Install new Software] をポチ。
すると下の [Install] 画面が出ます。

adt2

画面にも書いてある [Add...] ボタンをポチ。
すると下の [Add Repository] 画面が出ます。

adt3

ここの [Location] 欄に " https://dl-ssl.google.com/android/eclipse/ " を入力し、[OK] ボタンをポチ。
するとこの画面が閉じて元の [Install] 画面に戻ります。

adt4

ここの [work with:] の欄には先ほど入力した URL が入力されていて、真ん中辺りにある [Name] の欄には、この URL からダウンロードしてインストール可能なソフトの名前が表示されます。
表示まで一タイミング位ありました。
ここに表示された [Developer Tools] 横の△を押すと、私の時は4つ下位に出てきました。
それから [Developer Tools] 横の□にチェックを入れると以下の4つ全てにもチェックが入るので、それから下にある [Next] ボタンをポチ。
すると下の画面が出ます。

adt5

そのまま [Next] ボタンをポチ。
すると下の画面 [Install] が出ます。

adt6

Lisence Text を読みもせず… [I accept the terms of the license agreements] にチェックを入れ [Finish] ボタンをポチ。
トトトトトトトトっとインストールが始まるのですが、私の場合は途中で下の画面 [Security Warning] が出てきました。

adt7

ええ? 取り敢えず [Details] ボタンを押してみて、どういうことか見てみますが、いろんなものが書かれています。
まぁだからと言って私にはど~しようもないのでw [OK] ボタンをポチ。
途中で止まっていたインストールが再開され無事に完了すると、下の画面 [Softwear Updates] が出てきます。

adt8

ふむふむふむ。何がふむふむなのか解りませんが、取り敢えず Eclipse 再起動ですね。
[Restart Now] ボタンをポチ。
再起動で何もなければ終わりかな?と思いきや、もう1つ設定があるそうでして、
以下の画面にもあるように、メニュー [Window] - [Preferences] をポチ。

adt9

すると [Preferences] 画面となりますので、左ペインのカテゴリの上から2番目 [Android] をポチすると下の画面になります。

adt10

ここで [SDK Location:] の欄に、SDK をインストールしたフォルダパスを入力します。 覚えていますかね?
私はデフォルトのままなので " C:\Program Files\Android\android-sdk " となり、これを入力します。
それから下にある [OK] ボタンをポチ。
すると下の画面が出てきます。のはぁっ、まだあるんか!もう疲れ気味なので流し読みして [Proceed] ボタンをポチ。

adt11

すると元の画面に戻り [Target Name] などの欄にズラズラといろいろでてくるのを確認して [OK] ボタンをポチ。
Eclipse の最初の画面に戻りまして、Eclipse を閉じて ADT のインストールは完了で~~す。
これで開発環境に関するものは全てインストール・設定が完了しました。
ブログにしながらは流石に疲れました…w ふう。

2011年5月3日火曜日

Android SDK のインストール

購入した はじめてのAndroid2プログラミング の本を参考に進めていきます。

前回は、Eclipse インストールしましたので、次に Android SDK (ソフトウェア開発キット)のインストールをおこないます。

まず、Android developers サイトの 『Android SDK | Android Developers』 のダウンロードページからダウンロードします。

sdk_dl

windows 版には、.zip と .exe の二種類のファイルがありますが、.exe ファイルには (Recommended) とも書かれていてオススメですし、インストーラー付きのようなので、こちらをポチ。
installer_r10-windows.exe がダウンロードされます。

これを起動すると、インストーラーが走り下の画面が出ます。

sdk1

[Next] をポチ。 すると下の画面が出ます。

sdk2

?? "Java SE development kit(JDK) not found." と書かれていて Next ボタンも消えてるがな!
JDK インストールしたしぃ~ なになに~?
こんな時は google先生で。 『android sdk tools setup jdk not found』 で検索しました。
すると、やはり同じ問題の方がいらっしゃるようでして、
Help: JDK not detected problem during Android SDK Tools setup ... のサイトに解決方法が書いてありました。
"Bit late answering this, but for anyone else having problems - just press 'Back' then 'Next' - it picks it up the second time" とあります。
要は、[Back] ボタンを押して前に戻り、もう一度 [next] ボタンを押すだけのようで、おおっ上手くいきました! 下の画面になりました。

sdk3

[Next] をポチ。 すると下の画面が出ます。

sdk4

すると、インストールする場所を指定する画面が出てきます。
デフォルトでは C:\Program Files\Android\android-sdk となっております。
これもそのままで大丈夫なので、[Next] をポチ。 すると下の画面(スタートメニューの登録先)が出ます。

sdk5

そのままで大丈夫なので、[Install] をポチ。 するとインストールが始まります。
下の画面は無事にインストールが終わったところです。

sdk6

[Next] をポチ。 するとおお終わったようです。
取り敢えず、立ち上げてみようと、[Start SDK Manager] にチェックをいれたまま [Finish] ボタンをポチ。 すると

sdk8

sdk9

sdk10

私の場合は上の3つの画面がポンポンポンとポップアップしました。 SDK manager が自動的に立ち上がるようです。
一番上に来ている画面を読むと [Failed to fetch URL] とあります。 見つからなかったんですね。 よく解らないまま [Close] をポチ。
すると下の追加パッケージをインストールする画面が出てきます。

sdk11

デフォルトでは、インストール可能な全てのパッケージにチェックが付いているようです。
Android の API は基本的に新しいものが古いもの全てを包括するようになっているらしいので、最新版の [SDK platform Android 3.0...] だけでいいのですかね?一応 [SDK platform Android 2.3.3...] もですかね?
ただ、古い Android デバイスもサポートし、古いデバイス上でも動作するアプリを作成するためには、それに合わせた古い API もインストールしておく必要があるそうです。
よく解らないのと私が今使っているアプリの中には 1.6 以上動作可能のものが幾つかあるので、取り敢えずそのままで全部インストールすることにしました。
ですから [Accept All] にチェックを入れ、[Install] ボタンをポチ。
このインストールには結構時間がかかりましたね~。 計っていないので具体的な時間はかけませんが…。
すると下の画面 [ADB Restart] が出てきてリスタートしますか?聞いてくるので [Yes] をポチ。

sdk12

するとインストールが始まります。 下の画面はインストールが完了したところです。

sdk13

そうして [Close] をポチ。
すると下の SDK manager 画面に戻ります。

sdk14

これで終わりのようなので、画面右上の [X] で画面を閉じます。
これで Android SDK のインストールは完了です。