androidのログの簡易化の拡張

2014年1月5日日曜日

android 開発

t f B! P L
androidのログの簡易化で使用したものを少し拡張したもので、ライブラリみたいな
感じで作ったクラスに適用することを想定したものです。
出力ログは、
タグ   : 呼び元の関数名+行数
テキスト : たたかれた関数名+行数+出力ログ内容
みたいな感じですので、呼び元がわかるログが出力されるようになります。
使用方法は
Util.logLib(変数とか、文字列とか);


import android.util.Log;

public class Util
{
 // デバッグログスイッチ
 private static boolean isLog()
 {
  return true;
 }
 private static String getTag(StackTraceElement ste)
 {
  String className = ste.getClassName();
  className = className.substring(className.lastIndexOf(".") + 1);
  final String methodName = ste.getMethodName();
  final int lineNum = ste.getLineNumber();
  return className + "." + methodName + ":" + lineNum;
 }
 public static void logLib(Object msg)
 {
  if(isLog())
  {
   log(getTag(Thread.currentThread().getStackTrace()[4]),
     getTag(Thread.currentThread().getStackTrace()[3]) + ":" + String.valueOf(msg));
  }
 }
}

QooQ