Android stetho Google Developer工具资源被截断

时间:2016-11-02 15:15:34

标签: android google-developer-tools google-developers-console stetho

使用Stetho和Stetho Realm。

Stetho.initialize(
                Stetho.newInitializerBuilder(this)
                        .enableDumpapp(Stetho.defaultDumperPluginsProvider(this))
                        .enableWebKitInspector(RealmInspectorModulesProvider.builder(this).build())
                        .build());

我能够通过Google Developer Console查看Realm DB内容,但最大索引是249,之后的所有值都被截断 -

enter image description here

如何强制它显示所有值?

1 个答案:

答案 0 :(得分:8)

原因是Stetho内部的限制。在课堂上

com.facebook.stetho.inspector.protocol.module.Database

https://github.com/facebook/stetho/blob/36aa5bd356d9cf5893b9424b06a83dda9ec5e44f/stetho/src/main/java/com/facebook/stetho/inspector/protocol/module/Database.java

有这个信息 -

  /**
   * The protocol doesn't offer an efficient means of pagination or anything like that so
   * we'll just cap the result list to some arbitrarily large number that I think folks will
   * actually need in practice.
   * <p>
   * Note that when this limit is exceeded, a dummy row will be introduced that indicates
   * truncation occurred.
   */
  private static final int MAX_EXECUTE_RESULTS = 250;

对于Realm Stetho,可以通过这种方式更改限制 -

Stetho.initialize(
                Stetho.newInitializerBuilder(this)
                        .enableDumpapp(Stetho.defaultDumperPluginsProvider(this))
                        .enableWebKitInspector(RealmInspectorModulesProvider.builder(this)
                                .withFolder(getCacheDir())
                                .withMetaTables()
                                .withDescendingOrder()
                                .withLimit(100000)
                                .build())
                        .build());