# Logger使用
APP开发经常需要查看输出,比如对象的值、服务端返回的Json数据结构等,我们需要实时的再控制台看到输出,这时就必须使用日志来解决了。
如何使用Logger呢?
第一步 配置build文件
`compile 'com.orhanobut:logger:2.1.1'`
第二步 在APP的Application中初始化Looger
第三步 初始化Looger的样式
~~~
FormatStrategy formatStrategy = PrettyFormatStrategy.newBuilder()
.showThreadInfo(false) // (Optional) Whether to show thread info or not. Default true
.methodCount(0) // (Optional) How many method line to show. Default 2
.methodOffset(7) // (Optional) Hides internal method calls up to offset. Default 5
.logStrategy(customLog) // (Optional) Changes the log strategy to print out. Default LogCat
.tag("My custom tag") // (Optional) Global tag for every log. Default PRETTY_LOGGER
.build();
Logger.addLogAdapter(new AndroidLogAdapter(formatStrategy));
~~~
第四步,打印你想打印的一切
比如
~~~
Logger.d("debug");
Logger.e("error");
Logger.w("warning");
Logger.v("verbose");
Logger.i("information");
Logger.wtf("wtf!!!!");
~~~
打印结果如下:
![](https://box.kancloud.cn/e5e06c04c93d1a2c348268051e1ee150_1538x1074.png)
# 在点餐系统中是如何使用日志输出的呢?
首先,做了一层简单的封装
~~~
public class AppLog {
public static final String TAG="ycf";
static {
Logger.addLogAdapter(new AndroidLogAdapter());
}
public static void debug(Object objets){
Logger.d(objets);
}
public static void json(String json){
Logger.json(json);
}
}
~~~
在APP的点餐列表里,是这样使用Log日志的
~~~
requestParams.add("items", jsonArray.toString());
AppLog.debug(jsonArray.toString());
client.post(Constants.server_url + Constants.submit_order, requestParams, new AsyncHttpResponseHandler() {
@Override
public void onSuccess(int statusCode, Header[] headers, byte[] responseBody) {
AppLog.debug(new String(responseBody));
JSONObject jsonObject = JSON.parseObject(new String(responseBody));
if (jsonObject.get("code").equals(0)) {
AppLog.debug(jsonObject.get("msg"));
Intent intent = new Intent(HomeActivity.this, OrderResultActivity.class);
intent.putExtra("orderid", jsonObject.getJSONObject("data").getString("orderId"));
intent.putExtra("openid", openid);
startActivity(intent);
}
}
@Override
public void onFailure(int statusCode, Header[] headers, byte[] responseBody, Throwable error) {
}
});
~~~