クロノス・クラウン - 記事検索

おすすめ
自作の本やゲーム他を販売
便利なWebアプリが多数
ソフトウェア
めもりーくりーなー Winのメモリーを掃除
Novel Supporter 小説推敲補助ソフト
PCソフト まとめ
ゲームブック
闇の聖杯の儀式 電書のゲームブック
ゲーム
Little Land War... Win向けSRPG
Little Bit War Switch向け高速RTS
TinyWar... 1面数分の8bit風RTS
EX リバーシ 変形盤面、盤面多数
no link
2008年12月10日 21:12:48
[Mobile] 関係の記事
[Android] 関係の記事

 一昨日、昨日と、非力マシンで「Android」の「emulator」を弄っていたので、メモしておきます。

 本日1つ目のメモは、サンプル・アプリ「Lunar Lander」のコンパイルと「Android」へのインストールについてです。

 以下、備忘録です。



■ サンプル・アプリ「Lunar Lander」

 「Android」のSDK付属のサンプル・アプリ「Lunar Lander」を、コンパイルして「emulator」にインストールするまでを実験しました。

 以下、「Android」について少し書いておきます。

 「Android」は、Linux系のOSです。このOSは、「emulator.exe」を実行すると、バーチャルOSとしてPC上に起動します。

 Linux系のOSなので、shellコマンドで、「Android」内のディレクトリ構造を見たり、ファイル操作したりできます。

 以下、まずは「Eclipse」でプロジェクトをコンパイルしてデバッグした時のメモです。



■ 「Lunar Lander」を「Eclipse」でコンパイルして実行

・「Eclipse」を起動。

・「Lunar Lander」のプロジェクトを作る。

・プロジェクトの作り方は以下の通り。

・[ファイル]→[プロジェクト]→ダイアログ起動→[Android]→[Androidプロジェクト]として作ること(「Javaプロジェクト」ではない)。

・[Androidプロジェクト]を選ぶと、既存プロジェクト(サンプルの「Lunar Lander」)を、ディレクトリ指定で読み込むことができる。



■ 実行1 「Eclipse」のデバッグから実行

・実行からエミュレーターの起動まで4分9秒。

・ホーム画面が出て、1分40秒後に「Lunar Lander」の画面が起動。

・CPUは100%になりっぱなしだが、取り敢えず遊ぶことはできる。

・8462が方向キーで、5が決定キー。

・エミュレーターは起動したままで、再度デバッグを実行。

・「Lunar Lander」は、今度は1分30秒で起動した(既に「emulator.exe」自体は起動しているため、短くなっている)。

Android011


Android012

 以下、メモです。

・デバッグの際は、エミュレーターは起動しっぱなしにしておく。

 デバッグを実行した際の「Eclipse」の動作は、以下の通りです。

・ソースをコンパイルする。

・プロジェクトをapkファイルにする。

・apkファイルにデバッグ用の署名をする。

・そのファイルをエミュレーターにアップロードしてインストールする。

・アプリをデバッグ用に実行する。



■ 実行2 別マシンの「Android」にインストールして実行

 以下、開発用のマシンとは別に、デバッグ用のマシンを用意してデバッグをするための実験です。

・プロジェクトを右クリック→[Androidツール]→[Export Unsigned Application Package...]を選ぶ。

Android010


・コンパイルされた、apkファイルが作られる。

・コンパイルしているのとは別のマシンで、デバッグツールである「ddms」を起動。

※ こうすれば、「Eclipse」のデバッグ機能を利用しなくても、そのマシンでデバッグが可能なため。

・コンパイルしているのとは別のマシンで、コマンドラインに「emulator」と打ち込んで「Android」を起動。

・「LunarLander.apk」を別マシンにコピー。コマンドラインで、そのディレクトリに移動。

・コマンドラインで、「adb install LunarLander.apk」として、エミュレーター上の「Android」に、アプリをアップロードする(ここでは失敗する)。

 アプリの追加、削除方法は以下を参照。

追加:http://www.javadrive.jp/android/distribute/index3.html
削除:http://www.javadrive.jp/android/distribute/index4.html

・インストールに失敗して、「Failure [Install_PARSE_FAILED_NO_CERTIFICATES]」というエラーメッセージが出る。

 原因は、アプリに署名がないため。

 「Android」では、アプリを導入するためには、アプリに署名をしておく必要がある。

参考:http://karetta.jp/book-node/android/233799



■ アプリへの署名の方法1 証明書の作成

・アプリをインストールするには「keytool」(JDK付属のソフト)で署名をする必要がある。

・まずは、署名するための証明書を作る。

参考:http://www.adamrocker.com/blog/232/signing_for_publish_android_application.html

・コマンドラインで、証明書を作るディレクトリに移動。

・以下のコマンドで、証明書を作成。

keytool -genkey -keystore (名前).keystore -validity 10000 -alias (名前)

・「キーストアのパスワードを入力して下さい。」などと尋ねられるので、聞かれた通りに答えていく。

・「〜でよろしいですか?」と聞かれるので、「yes」と入力。最後まで質問に答えていく。



■ アプリへの署名の方法2 アプリへの署名

・アプリに署名をする。

・「(名前).keystore」と「LunarLander.apk」は同じディレクトリにあるとする。違う場合はフルパスで書く。

jarsigner -keystore (名前).keystore -verbose LunarLander.apk (名前)

・これで署名完了。apkファイルのファイルサイズが、2KBぐらい増える。

・別マシンのemulatorに「adb install LunarLander.apk」としてインストールを行う。

・今度は成功した。

・「LunarLander」をしばらく弄る。CPU消費は70%ぐらいなので、デバッグは可能そう。



 というわけで、プロジェクトをコンパイルして「Android」で実行するまでをやってみました。
最新20件 (全て見る)

オススメ電書 (全て見る

動画講座 (全て見る

サイト目次

おすすめ

PCソフト/Webアプリ

ゲーム

マンガ

記事

柳井の同人活動

開発

携帯・スマホ

アナログ・ゲーム

Cronus Crown(クロノス・クラウン)のトップページに戻る
(c)2002-2024 Cronus Crown (c)1997-2024 Masakazu Yanai
ご意見・お問い合わせはサイト情報 弊社への連絡までお願いします
個人情報の取り扱い、利用者情報の外部送信について