小问题用Logcat:在可能出错的地方,使用Log.v,Log.d,Log.i,Log.w,Log.e。其中,v,d,i,w,e是信息的等级,从左到右,等级升高,对应Logcat那里,就是verbose,Debug,Info,Warn,Error这五种过滤等级。
1、信息多就先提高Logcat的过滤等级
2、在Logcat看不到自己的信息的时候,在上方搜索,也可以在Logcat的右上角添加过滤器,show only....这是只显示当前应用的Logcat信息,No Filters是不要过滤器,Editer Filter...自定义过滤器
3、过滤器用了也没看到,说明你的Log信息很可能没有被成功打印,有时候是你的Log信息等级太低,AS不给你打印,推荐Log.w以上
例如,
Log.e(TAG,Message);
//TAG是标签,Message是错误信息,错误信息是你自己写一个String
推荐TAG设为全局变量,例如:
private final static String LOG_TAG=MainActivity.class.getSimpleName();
//MainActivity这里自己灵活做改变,这里也可能是你自定义的类名
复杂问题用Debug
先大概看一些Logcat大致出错的位置是哪儿【蓝字部分可以通过点击跳转到那个错误的地方】,你就在哪儿添加断点。调试的时候,手机不要管那个对话框,你点了就没法调试。
有些时候找不到问题所在,有可能是你该配置的东西没配置,比如Manifest里面的usus-permission用户权限
真机调试找不到设备,请把你的开发者选项的调试选项选上,开发者选项有些手机要在关于手机->版本号->连续点击(大概八下),直到弹出开发者选项。【强烈推荐下Genymotion模拟器】