使用Chrome浏览器调试Android App详解

 更新时间:2015年05月05日 17:34:51   投稿:junjie  
这篇文章主要介绍了使用Chrome浏览器调试Android App详解,本网讲解了使用Facebook开源Stetho实现在Chrome中调试Android App中,需要的朋友可以参考下

个人一直对Chrome情有独钟,Chrome除了更快之外,对开发者的支持更友好。内置强大的Developer Tools,相信Web开发简直爱不释手!而且Chrome Store里提供各种各样的插件,没有你用不到,只有你想不到。现在任何事基本Chrome全部办的到,有时候就在想,如果可以用Chrome调试Android App该多方便,而如今Facebook刚刚开源了一个工具Stetho,从此Chrome调试Android不再是梦。

调试工具

在Android开发中除了一些官方自带的一些调试工具外,还有两个工具我认为是必备的。

1.抓包工具

windows平台最好用的应该是Fiddle,mac上最好用的应该是Charles。这个应该是App开发必备,不管是Android还是iOS。

2.Sqlite查看

这个工具就多了,除了自带的sqlite3工具之外,还是需要一些GUI方面的工具更方便,就不一一列举了,大家自行搜索找到自己喜欢的工具就行了,有一些浏览器插件,也有一些各个平台的客户端。需要知道的是如果想查看App内的sqlite文件需要root。

Stetho

抓包工具虽然好用,但是每次都要在手机设置代理,也挺麻烦的,查看sqlite文件必须要root这点更麻烦。但是有了stetho,这些工具全部自带了,使用方便,无须root,下面就来看下官方demo介绍的使用用法。

1.首先Gradle进行依赖

复制代码 代码如下:

dependencies {
  compile 'com.facebook.stetho:stetho:1.0.1'
}

2.然后在你的App的Application类里进行配置
复制代码 代码如下:

public class MyApplication extends Application {
  public void onCreate() {
    super.onCreate();
    Stetho.initialize(
      Stetho.newInitializerBuilder(this)
        .enableDumpapp(
            Stetho.defaultDumperPluginsProvider(this))
        .enableWebKitInspector(
            Stetho.defaultInspectorModulesProvider(this))
        .build());
  }
}

然后就可以运行App进行调试,基本上可以满足调试需求了。

3.Chrome调试

打开Chrome,输入 chrome://inspect 然后就可以在列表里看到有你的app可以用stetho进行调试的app,facebook官方也提供了一个基本的sample,以下是它的sample提供的调试截图

基本功能使用

1.检测网络状态

2.查看App本地数据库并且可以直接执行SQL

查看App本地的SharedPreference文件并可以直接编辑

注意事项

值得注意的是如果你只是简单的进行配置下,检测网络状态的是没法查看,有两种方式:

1.使用OkHttp

这是最简单的一种方式,要求OkHttp的版本在2.2.x+,只需要添加如下代码, 这也是目前最简单的方法

复制代码 代码如下:

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

2.使用HttpURLConnection

如果你使用的自己写的或者其他http library底层是用HttpURLConnection实现的,你需要使用StethoURLConnectionManager来进行集成。然后必须声明Accept-Encoding: gzip的请求headers。具体用法见facebook stetho源码的sample。

其中你可能会依赖如下network helpers.

复制代码 代码如下:

dependencies {
  compile 'com.facebook.stetho:stetho-okhttp:1.0.1'
}

或者
复制代码 代码如下:

dependencies {
  compile 'com.facebook.stetho:stetho-urlconnection:1.0.1'
}

最后,提供一个facebook stetho demo的一个下载。

Stetho Sample

相关文章

  • 解析android中的dip,dp,px,sp和屏幕密度

    解析android中的dip,dp,px,sp和屏幕密度

    本篇文章是对android中的dip,dp,px,sp和屏幕密度进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • 如何让安卓(Android)子控件超出父控件的范围显示

    如何让安卓(Android)子控件超出父控件的范围显示

    下面我们来看一下关于安卓(Android)子控件超出父控件的范围显示出来的方法,希望这篇文章能够帮助到各位安卓(Android)的开发者们,有碰到此问题的朋友可以进来看看哦。
    2016-08-08
  • 详解Android开发技巧之PagerAdapter实现类的封装

    详解Android开发技巧之PagerAdapter实现类的封装

    这篇文章主要介绍了详解Android开发技巧之PagerAdapter实现类的封装,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-11-11
  • android自定义Camera拍照并查看图片

    android自定义Camera拍照并查看图片

    这篇文章主要为大家详细介绍了android自定义Camera拍照并查看图片,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-06-06
  • Flutter时间轴Timeline的实现

    Flutter时间轴Timeline的实现

    时间轴在很多地方都可以用的到,本文介绍了Flutter时间轴Timeline的实现,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-05-05
  • Windows下搭建Flutter开发环境

    Windows下搭建Flutter开发环境

    这篇文章介绍了Windows下搭建Flutter开发环境的方法,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-11-11
  • Android项目实现黑名单拦截效果

    Android项目实现黑名单拦截效果

    本篇文章主要介绍了Android项目实现黑名单拦截效果,可以根据白名单或者黑名单拦截,测试可以拦截电话,有需要的朋友可以了解一下。
    2016-10-10
  • listview与SQLite结合实现记事本功能

    listview与SQLite结合实现记事本功能

    这篇文章主要为大家详细介绍了listview与SQLite结合实现记事本功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-12-12
  • Android瀑布流照片墙实现 体验不规则排列的美感

    Android瀑布流照片墙实现 体验不规则排列的美感

    这篇文章主要为大家详细介绍了Android瀑布流照片墙实现,体验不规则排列的美感,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-10-10
  • AOSP源码下载示例代码

    AOSP源码下载示例代码

    这篇文章主要介绍了AOSP源码下载,由于清华源中给出很清晰的配置下载方法,这儿只做几条总结,对AOSP源码感兴趣的朋友一起看看吧
    2022-08-08

最新评论