2013年5月5日日曜日

ログ関数(Android)

元気ですか! 元気があれば何でもできる!

今日はログ関数をご紹介します。

android.util.Log.d(String tag, String msg)でいいのです。
なにをいまさら? という感じかもしれませんね。

アプリを公開する際にログを無効にしたくなったりすることはあるとおもいます。
(そのままログを吐いてもだれにも文句は言われないとおもいますが……)

アプリ公開の際に、ログを無効にする方法は、だいたい下記の3つくらいだとおもいます。
①コメントアウトする
もしくは
②無効化をみこしておいて下記のようにしておく
static final boolean DEBUG = false;
if (DEBUG) { android.util.Log.d("Tag", "Msg");
③Manifestのdebuggableに連動する
このみの問題もあるとおもいますし、どれでも無効化のし忘れという問題には対処できませんが、③だけは公開用のapkを作るときに警告がでます。
ということで私は③の方法を採っています。

あとログでいえば関数の入口と出口に書いておきたくないでしょうか。
private void function() {
    android.util.Log.d("tag", "function In");

    //  なにか処理

    android.util.Log.d("tag", "function Out");
}
これでももちろんよいのですが、メソッド名が変更となったときに、
ログの修正も必要になってしまいます。(さらに私はそのことをよく忘れます)


ログの出力/無効をManifestのdebuggableと連動させ、
メソッドの入り口・出口のログで、メソッド名を書かなくてよい方法を公開します。

みなさまのandroidアプリ開発のお役にたてれば幸いです。




デルカへ iTunes Store(Japan)

0 件のコメント:

コメントを投稿