facebook的Android调试工具Stetho介绍和使用注意事项


facebook的Android调试工具Stetho介绍 
一、前言
     Chrome的Developer Tools对于WEB开发者来讲几乎是一个神器,而Chrome Store里也有无奇不有的插件,如果Chrome能调安卓应用应该是一件美好的事,而Facebook开源的一个工具Stetho让Chrome调试android 应用不再是一个梦。安卓在调试时,有时候需要查看数据库,SharePreference等,而这个 前提是必须root,另一方面,andoird的网络方面的抓包调试显得很困难,而这一切,Stetho都为我们轻轻松松地解决。除了使用android集成环境里的工具查看view树,使用Stetho也可以做到。
     Stetho是Facebook出品的一个强大的Android调试工具,使用该工具你可以在Chrome Developer Tools查看App的布局,网络请求,sqlite,preference,一切都是可视化的操作,无须自己在去使用adb,也不需要root你的设备。使用的方式很简单,配置好之后,在Chrome地址栏输入chrome://inspect (哈哈,和webview 远程调试的方式一样)。废话少说,先来看看效果图。



facebook的Android调试工具Stetho介绍和使用注意事项_第1张图片

怎么样,是不是看起来很碉堡,尤其是如果你做过web开发,肯定感觉超级熟悉哈。下面我们就来看看怎么使用这么碉堡的工具。

二、添加gradle引用
compile 'com.facebook.stetho:stetho:1.1.0'

只有stetho库是必须的,想查看网络请求的话,需要使用下面的两个库之一(看你的网络库用的是okhttp还是urlconnection)

compile 'com.facebook.stetho:stetho-okhttp:1.1.0'
或者
compile 'com.facebook.stetho:stetho-urlconnection:1.1.0'

三、修改代码
public class MyApplication extends Application {
 
public void onCreate() {
   
super.onCreate();
   
Stetho.initialize(
       
Stetho.newInitializerBuilder(this)
           
.enableDumpapp(Stetho.defaultDumperPluginsProvider(this))
           
.enableWebKitInspector(Stetho.defaultInspectorModulesProvider(this))
           
.build());
 }}
   
四、使用Chrom调试
 注意: Android 4.4 开始,默认的浏览器已经是 chrome 了,所以 webview 也是 chrome 了,这就给了 webview 远程调试的能力。我们需要在 Android 里针对 Webview 做以下设置:
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
            WebView.setWebContentsDebuggingEnabled(true);
       }
     在我们运行完程序后,我们打开Chrome,在地址输入chrom://inspect/,我们会看到这样的界面:


       我们点击图中的蓝色inspect即可进入调试界面, 如果点击该链接后你打开的是一个空白页面,那么恭喜你,你已经被G-_-/F-_-/W拦截了你必须啦。
五、开启网络请求查看

若果你使用了okhttp库,参考下面的代码:

OkHttpClient client = new OkHttpClient();
client
.networkInterceptors().add(new StethoInterceptor());

如果你使用了HttpURLConnection,你需要使用StethoURLConnectionManager来帮忙。


参考链接: http://omgitsmgp.com/2015/12/02/effective-okhttp/
                http://blog.jobbole.com/68606/
                http://www.it165.net/pro/html/201505/39734.html
                http://blog.csdn.net/forlong401/article/details/45102119

你可能感兴趣的:(facebook的Android调试工具Stetho介绍和使用注意事项)