我可以看到这是Android开发人员的常见做法.
public final class TasksSample extends ListActivity {
private static final String TAG = "TasksSample";
private void method() {
Log.i(TAG, "message");
}
}
Run Code Online (Sandbox Code Playgroud)
如果我这样做会更容易吗?我不需要为每个新类声明TAG.
public final class TasksSample extends ListActivity {
private void method() {
Log.i(getClass().getName(), "message");
}
}
Run Code Online (Sandbox Code Playgroud)
Aru*_*rge 12
不是getClass().getName()在特定活动中放置日志的每个位置写入,而是始终优先使用TAG表示活动类的名称.
Why use TAG?
当您运行应用程序时,其中可能包含多个Activity类.为了区分哪个活动类记录了信息,logcat我们使用TAG的当然代表了类的名称.
编写TAG的正确方法(我不是说你写的是错的)是:
private static final String TAG = TasksSample.class.getSimpleName(); // and not "TasksSample"
Run Code Online (Sandbox Code Playgroud)
小智 5
先前的每个答案都是正确的,但我只想添加一点评论。
private static final String TAG = TasksSample.class.getSimpleName();
Run Code Online (Sandbox Code Playgroud)
要么
private static final String TAG = "TasksSample"
Run Code Online (Sandbox Code Playgroud)
使用时将使用后者proguard。如您所知,proguard混淆了类名,它也影响日志。
| 归档时间: |
|
| 查看次数: |
9938 次 |
| 最近记录: |