代码之家  ›  专栏  ›  技术社区  ›  4ntoine

每个库的Breakpad初始化?

  •  0
  • 4ntoine  · 技术社区  · 10 年前

    对于新手的问题,很抱歉。我有libnative_exception_handler.so和breakpad init:

    google_breakpad::MinidumpDescriptor descriptor(".");
    google_breakpad::ExceptionHandler eh(descriptor, NULL, breakpad_callback, NULL, true, -1);
    

    以及带有不安全函数的libfunc.so。

    两个库都使用 System.loadLibrary();

    如果breakpad初始化在 libnative_exception_handler.so 信号不会被捕获,并且不会调用breakpad回调。如果我改变 libfunc.so 捕捉源到init breakpad的信号。所以breakpad是否需要在不安全函数所在的库中初始化?。

    更新:我已经创建了lib和demo应用程序来演示这个问题: https://github.com/4ntoine/Acra-breakpad

    1 回复  |  直到 7 年前
        1
  •  0
  •   4ntoine    10 年前

    google_breakpad::ExceptionHandler eh 需要在堆中初始化,而不是在堆栈中。