0

我的应用程序中有一些日志文件,我想用这些日志制作一个 zip 文件,然后通过 Instabug 发送,当我摇晃手机并按下“报告错误”或“发送反馈”时。

这是我的应用程序中的代码:

  Instabug.initialize(this)
            .setAnnotationActivityClass(InstabugAnnotationActivity.class)
            .setShowIntroDialog(true, PSTimelineActivity.class)
            .enableEmailField(true,false)
            .setEnableOverflowMenuItem(true)
            .setDebugEnabled(true)
            .setBugHeaderText("Error")
            .attachFileAtLocation(Environment.getExternalStorageDirectory() + "/Passenger/log.zip");

如您所见,我选择了应该附加的文件,但我还需要从我的日志文件中创建该文件,就在我摇动手机之后(因此它将获取最新的日志),并且在按下 2 中的任何一个之前按钮进行报告。我有存档功能,我只是不知道我可以把它放在哪里,所以这会起作用。有什么想法吗?

4

1 回答 1

0

我这样初始化 Instabug:

Instabug.initialize(this)
            .setAnnotationActivityClass(InstabugAnnotationActivity.class)
            .setShowIntroDialog(true, PSTimelineActivity.class)
            .enableEmailField(true,false)
            .setEnableOverflowMenuItem(true)
            .setDebugEnabled(true)
            .setBugHeaderText("Error")
            .setPreSendingRunnable(new Runnable() {
                @Override
                public void run() {
                    String[] files = new String[2];
                    files[0] = Environment.getExternalStorageDirectory() + "/Passenger/passenger_log.txt";
                    files[1] = Environment.getExternalStorageDirectory() + "/Passenger/passenger_log2.txt";
                    Compress compress = new Compress(files, Environment.getExternalStorageDirectory() + "/Passenger/log.zip");
                    compress.zip(new CrudStateCallback() {
                        @Override
                        public void onResponse(String string) {
                            Log.i("", "ended making the archive");
                        }
                    });
                }
            })
            .attachFileAtLocation(Environment.getExternalStorageDirectory() + "/Passenger/log.zip");

按照 Hassan Ibraheem 的建议,现在我在 preSendingRunnable 中创建 .zip。

于 2015-04-16T10:51:10.560 回答