1分で作るAndroidアプリ HelloWorld!を作る

2009/3/15 97983hit

先日の日記の続き、Androidの開発環境が出来たところで
お定まりのHelloWorld!をAndroid上へ作ってみる

まず、新規プロジェクトを作成する。
Eclipseを起動したら
メニューから[File]-[New]-[Project]を選択


Select a Wizardで[Android]-[Android Project]を選択


プロジェクトの詳細を設定
Project nameにhelloworldと入力
ContentsはCreate new project in workspaceを選択
Use default locationにチェックを入れておく
Package nameはjp.android.helloworldと入力
Activity nameはHelloWorldと入力
Application nameはHelloworldと入力
最後にFinishを選択


画面左側に新しいプロジェクトが出来ているので
[helloworld]-[src]-[jp.android.helloworld]-[HelloWorld.java]とたどっていく


HelloWorld.javaは以下のようになっている


package jp.android.helloworld;

import android.app.Activity;
import android.os.Bundle;

public class HelloWorld extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
}


HelloWorld.javaを以下のように変更

package jp.android.helloworld;

import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView; // ここはEclipseがかってにやってくれる

public class HelloWorld extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
TextView display = new TextView(this); //追加
display.setText("Hello World!!"); //追加
setContentView(display); //追加
// setContentView(R.layout.main); 削除

}
}


以下コードの説明

import android.widget.TextView;

Androidで画面表示用のオブジェクトはViewのサブクラスとなっていて、文字列を表示するためにはTextViewオブジェクトが用意されている。
そのTextViewオブジェクトを使用するための準備だけど、Eclipseが自動でやってくれて嬉しい


TextView display = new TextView(this);

TextViewクラスのインスタンスを作成。
コンストラクタの引数は自分自身(HelloWorldのインスタンス)を指定すること


display.setText("Hello World!!");

displayのテキストをHello World!!にセット


setContentView(display);

画面に表示する。

以上のコードを書き終えたら、実際に動作させてみる。
メニューから[Run]-[Run]を選択


ダイアログが表示されたら
Android Application を選択してOK
Run As

Androidが起動を始める。
画面にANDROIDと表示される

Androidの起動が完了したらMenuボタンをクリックして、画面ロックを解除する。
起動が完了するとステータスが表示される

無事にプログラムが動いているのが見られる。
画面にHelloWorld!!と表示される

HelloWorld!はプログラムの基本とはいえ、携帯アプリが、エミュレータ上でこうもさくっと作れてしまうのにびっくり
Android自体もマルチプラットフォーム、マルチタスク
そして、無料となかなか面白そう
日本への展開はまだ後になりそうだけど、面白い端末が出てヒットして欲しいなぁ

前:EclipseでAndoroidの開発環境を整える 次:S2000特設サイト

関連キーワード

[Android][IT]

コメント

名前:kensei|投稿日:2009/03/26 22:17

日本語じゃないEclipseを久しぶりに見たw

名前:kenz|投稿日:2009/03/27 01:18

ほんとは携帯とかも英語にしたいんだけど、携帯って表示を英語にするとデフォルト入力が漢字からアルファベットになっちゃうんだよねぇ

名前:名無しさん|投稿日:2010/04/30 18:30

Application does not specify a android.test.InstrumentationTestRunner instrumentation or does not declare uses-library android.test.runner

上記が出て実行できない場合はどうしたらいいんでしょうか?

名前:kenz|投稿日:2010/05/01 02:04

単体テストプロジェクトを作っていない状態で単体テストプロジェクトを実行しようとすると、そのようなエラーとなります。

Package Explorerよりプロジェクトを選択して、右クリック後「Run As」-「Android Application」を選択してみてください。

名前:名無しさん|投稿日:2010/10/30 13:32

すいません。教えていただきたいのですが、
下から3番目の画像まで表示されるのですが、下から2番目の画像へは行きません。
デフォルメされた光る「ANDROID」の文字が出てきてそれ以上変化はありません。
「android-sdk_r07-windows」を使用しています。お心当たりがあれば教えていただけないでしょうか。よろしくお願いします。

名前:kenz|投稿日:2010/10/30 14:13

エミュレータはかなりCPUパワーを喰うので、PCの環境によっては待たされるかと思います。
ちなみに私の環境(Athlon64x2 6000+デチューン、Windows7 64bit)でAndroid1.6は40秒、Android2.2は60秒起動に時間が掛かりました。
互換性の問題をなくすためにハードウェア丸ごとエミュレートしている関係みたいです。
パフォーマンスで言うとHT-03A実機よりだいぶ劣ってます。

それでもだめな場合、AVD ManagerよりVirtual Deviceで開くデバイスを選び、Wipe user dataを選んでみてください。
インストールされているアプリやデータが初期化された状態でブートします。

名前:名無しさん|投稿日:2010/10/30 22:32

kenzさん

お返事ありがとうございます。
Wipe user dataを選択あり、無しで行ってみましたが、変化はありませんでした。解決策を探してみたいと思います。

名前:kenz|投稿日:2010/10/31 00:47

人によっては5分以上かかったという人もいますので
起動ロゴの光が動いている場合はしばらく待ってみるのが良いかと思います。
一度起動してしまえば、そこそこ普通に動きますし、その状態でアプリの転送も出来るので開発中は起動しっぱなしにしています。

名前:名無しさん|投稿日:2011/09/07 11:34

XMLも追加しないとエラーになりますよね。

名前:kenz|投稿日:2011/09/10 01:17

EclipseでAndroidのプロジェクトを作ると自動でサンプルのXMLが追加されていると思うのですが

名前:Aya|投稿日:2011/09/21 09:26

私もApplication does not specify a android.test.In〜の件で検索してきました。
参考になりました。ありがとうございます!

名前:kenz|投稿日:2011/09/21 12:43

お役に立ててよかったです
本当はテストプロジェクトを作ったほうがいいんでしょうけれど、ついつい後回しになってしまいますよね

コメントを投稿する

名前URI
コメント