2012年02月22日

ログ(Log)の出力


Androidには標準でログを出力する機能がありデバッグをおこなう際に便利です
ログとは画面上やユーザー操作を開発者に通知するツールで
通常、製品などの完成品には搭載していない
(搭載してあってもユーザーは普通見ることができない)

ログを出力するには・・・
Logを出力するにはLogクラスのメソッドを使用します
ログには4種類のログが存在し
出力するログの種類によって使うメソッドが決まっています
下記のプログラムによってログを出力したいと思います
package blog.test;

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

public class TestActivity extends Activity {
	private static final String TAG = "LogSample";
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

			        Log.v(TAG, "VERBOSE");  // 詳細なログの出力
			        Log.d(TAG, "DEBUG");    // デバッグログの出力
			        Log.i(TAG, "INFO");     // 情報ログの出力
			        Log.w(TAG, "WARN");     // 警告ログの出力
			        Log.e(TAG, "ERROR");    // エラーログの出力

    }

}
Logの第1引数にはログの発生源を示す文字列を指定し
(今回はLogSampleという文字列を使用)
第2引数にはログに出力したいメッセージを指定します

どこにログが出力されたかというと・・・
ログを見るにはLogCatを使用します
eclipseの上部メニューのウィンドウから
→ビューの表示→Logcatを選択します
tag02.png
これでLogCatの表示ができますが
これはシステムが出力するすべてのログが表示されている状態です
tag03.png
そこで自分が任意に出力させたログだけを見たい時のために
フィルターを作ります
LogCatの左側のSaved Filterのプラスボタンを押します
tag04.png
ボタンを押すとこのポップアップウィンドウが出てきますので
フィルター名に自分の好きなフィルター名を(今回はTAG)
by Log Tagに先ほど設定したTAGの内容を
(今回はLogSampleとしていた)を入力します
tag05.png
OKを押すと新しいフィルターができます
今回作成したフィルターはTAGがLogSampleもののみを表示するようになっています
tag06.png

スポンサードリンク

posted by kenken at 17:26 | Comment(0) | TrackBack(0) | 開発補助 基本編 | このブログの読者になる | 更新情報をチェックする
2012年01月26日

アクティビティ


アプリケーションの基礎「アクティビティ」
AndroidのアプリケーションはJavaというプログラム言語で記述します
その表示内容はアクティビティ(Activity)と呼ばれるもので構成します

このアクティビティはAndroid上では1つの画面に相当し
表示されるボタンや入力欄などを管理します
ただしアクティビティ自体は画面そのものではないので
この中にどのような画面を表示させるのかは(どこにボタンを置いたりだとか)
は自分で設定しなくてはなりません

Android内では、ユーザーがアプリケーション画面からアイコンをタップしてアプリケーションを起動すると
アクティビティオブジェクトが作られます
その後アクティビティクラスで定義されているメソッドが呼び出されます

メソッド・・・方法・方式。わかりやすく言うと目次w
メソッド(目次)
 {内容}
といった感じ

このメソッドは、アプリケーション起動や終了、あるいは画面の回転などに応じて、指定されたものが順番に呼び出されます
このメソッドには、以下のようなものがあります
onCreate:アクティビティが最初に起動されるときに呼ばれる
onStart:アクティビティが表示される直前に呼ばれる
onResume:アクティビティがユーザーとやり取りする直前に呼ばれる
onPause:アクティビティがバックグランドに隠れる直前に呼ばれる
onStop:アクティビティが不要になったときに呼ばれる
onDestory:終了状態だったアクティビティが再び表示されるときに呼ばれる
onRestart:アクティビティが破棄される直前に呼ばれる

device53.png
Androidのアプリケーションとしてはこのようにメソッドが順に呼び出されますが
必ずしもすべてのメソッドを用意する必要はありません
例えばTestActivityを作成してjavaの中身を確認してみましょう
プロジェクト新規作成
場所は作成したプロジェクト内のsrcフォルダに○○Activity.java
とあると思います
その中に
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    }
とあります
このように通常は、onCreateで画面表示を設定し
onStart・onResumeなどは定義せず無視しています
ちなみにonCreateを呼び出しその次に
setContentViewというメソッドを実行しています
これはR.layout.mainを呼び出して表示しますよ〜というものです
このR.layout.mainの内容を変更したりonCreateの中身を変更することで
様々な動作を設定していきます

スポンサードリンク

posted by kenken at 13:32 | Comment(0) | TrackBack(0) | 開発補助 基本編 | このブログの読者になる | 更新情報をチェックする