首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何禁用ACRA的日志记录

如何禁用ACRA的日志记录
EN

Stack Overflow用户
提问于 2014-04-12 23:43:03
回答 2查看 1.3K关注 0票数 2

我在我的应用程序中使用ACRA报告坠机事件。(简而言之,ACRA是向开发人员发送崩溃报告的工具。)

即使在版本构建中,我也可以在设备的logcat中看到它的日志(例如,当它发送崩溃报告时,它会发送许多带有"ACRA“标记的日志行)。

有办法禁用它的日志记录吗?

基于下面的注释,让我再次强调:我请求禁用本身的日志记录。这个问题与ACRA的崩溃或在应用程序崩溃期间的系统逻辑猫无关。

我认为最好是提供一个例子来说明我的意思:

代码语言:javascript
复制
04-13 02:33:50.980: D/ACRA(4560): Using custom Report Fields
04-13 02:33:51.170: I/ACRA(4560): READ_LOGS not allowed. ACRA will not include LogCat and DropBox data.
04-13 02:33:51.170: D/ACRA(4560): Writing crash report file 1667311131000.stacktrace.
04-13 02:33:51.200: D/ACRA(4560): About to start ReportSenderWorker from #handleException
04-13 02:33:51.200: D/ACRA(4560): Waiting for Toast + worker...
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-07-07 08:21:33

要禁用ACRA的日志记录,您可能需要使用ACRALog接口的以下实现:

代码语言:javascript
复制
public class NoAcraLog implements ACRALog {

    @Override
    public int v(String tag, String msg) {
        return 0;
    }

    @Override
    public int v(String tag, String msg, Throwable tr) {
        return 0;
    }

    @Override
    public int d(String tag, String msg) {
        return 0;
    }

    @Override
    public int d(String tag, String msg, Throwable tr) {
        return 0;
    }

    @Override
    public int i(String tag, String msg) {
        return 0;
    }

    @Override
    public int i(String tag, String msg, Throwable tr) {
        return 0;
    }

    @Override
    public int w(String tag, String msg) {
        return 0;
    }

    @Override
    public int w(String tag, String msg, Throwable tr) {
        return 0;
    }

    @Override
    public int w(String tag, Throwable tr) {
        return 0;
    }

    @Override
    public int e(String tag, String msg) {
        return 0;
    }

    @Override
    public int e(String tag, String msg, Throwable tr) {
        return 0;
    }

    @Override
    public String getStackTraceString(Throwable tr) {
        return null;
    }
}

ACRA提供该类的实例

代码语言:javascript
复制
ACRA.setLog(new NoAcraLog());

这应该禁用ACRA的所有日志记录,因为上面的实现没有任何作用。(FYI:通常ACRA使用AndroidLogDelegate将日志消息重定向到Log类。)

票数 4
EN

Stack Overflow用户

发布于 2014-04-12 23:47:09

关于“启用/禁用系统日志”的这一节可能会有所帮助-- https://github.com/ACRA/acra/wiki/AdvancedUsage#enabledisable-system-logs

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23037462

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档