Chrome 调试 Android App

通过Chrome来查看APP里面的数据库,配置文件等信息。原先想要获取这些数据的话,手机需要Root,而且数据需要导出到PC后,然后在用想要的工具打开,db需要sqlite3工具打开。

而如今Facebook刚刚开源了一个工具Stetho,从此Chrome调试Android不再是梦。

项目依赖Stetho

  • 首先Gradle进行依赖
dependencies { compile 'com.facebook.stetho:stetho:1.0.1'}
  • 然后在你的App的Application类里进行配置
public class BaseApplication extends Application{

    protected static Context mContext;
    @Override
    public void onCreate() {
        super.onCreate();
        Stetho.initialize(
                Stetho.newInitializerBuilder(this)
                        .enableDumpapp(
                                Stetho.defaultDumperPluginsProvider(this))
                        .enableWebKitInspector(
                                Stetho.defaultInspectorModulesProvider(this))
                        .build());
        mContext = getApplicationContext();
    }

    public static Context getContext(){
        return mContext;
    }
}

Chrome调试

打开Chrome,输入chrome://inspect,在Devices里面会看到当前连接的手机,
打开你的APP应用,会出现在设备的下面。

Chrome 调试 Android App_第1张图片
Paste_Image.png

只有接入了Stetho,才会显示出来。

点击[inspect],经过一段时间的加载就会显示如下界面。

当然大部分还是加载不出来的,出现空白。这个就需要FQ了
请参考:http://www.jianshu.com/p/598b453ab5b1

Chrome 调试 Android App_第2张图片
Paste_Image.png

选择Resources,就可以看到App的本地数据了。

  • WebSQL: 显示App的所有数据库。
    数据库还可以进行查询,选择相应的数据库,右侧就可以直接输入SQL语句查询了。(是不是超赞
Paste_Image.png
  • Local Storage: App的配置文件。重点是还可以直接进行编辑。是不是超赞
Chrome 调试 Android App_第3张图片
Paste_Image.png

查看APP网络连接

  • 使用OkHttp
    添加Gradle依赖
dependencies { 
  compile 'com.facebook.stetho:stetho-okhttp:1.0.1'
}

添加代码

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

打开APP,访问网络,[Network]上就可以看到网络数据了。

Chrome 调试 Android App_第4张图片
Paste_Image.png

这里在推荐一个Chrome插件PostMan来进行发送http请求。

Postman是一款功能强大的网页调试与发送网页HTTP请求的Chrome插件。

参考资料

具体参考:
http://stormzhang.com/android/2015/03/05/android-debug-use-chrome/

提供一个facebook stetho demo的一个下载。
Stetho Sample

你可能感兴趣的:(Chrome 调试 Android App)