C JNI库使整个android应用崩溃

文章

我正在使用为Android编译的ffmpeg,目前可以正常使用,但是有时会出现错误(基于某些android手机配置),并且该应用程序强行关闭此消息:

致命信号11(SIGSEGV)位于0x00000001(代码= 1),线程20745(AsyncTask#2)

ffmpeg调用位于try / catch内部;但是,它似乎并不在乎。

因此,如何防止这种强制关闭并向用户显示消息?

法尔肯教授

恐怕我做不到。另请参阅此答案,它暗示了原因

ffmpeg死后,它将带走您的整个程序。这就是事实。使用Java进行编程时,您不必考虑程序会以这种方式崩溃,但是当用C编写的ffmpeg死掉时,它可能会破坏整个Java程序。

try/catch这没有帮助,因为ffmpeg不知道或不关心Java异常。留在Java程序中的唯一解决方案是找到导致ffmpeg死亡的bug,或者找到触发该bug的原因并以不会崩溃的方式调用ffmpeg。正如Alex Cohn所指出的那样,另一种解决方案是在另一进程中运行ffmpeg,以便它除了自己的进程外不能删除其他任何东西。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

为什么在共享库中调用c方法时android Jni崩溃?

来自分类Dev

如何通过JNI / NDK获取Android应用中使用的C ++库的日志行的控制台输出(printf,cout等)

来自分类Dev

Android JNI找不到C ++标准库头文件

来自分类Dev

Android:Crashlytics无法发送报告C ++库崩溃

来自分类Dev

PolarSSl bignum.c在使用JNI时将在Android 5.0及更高版本中导致崩溃

来自分类Dev

如何在基于Cordova的Android应用中使用C库

来自分类Dev

在C ++本机中将项目添加到ArrayList会使Click Listener上的android应用崩溃

来自分类Dev

C ++应用程序在删除时崩溃

来自分类Dev

JNI C代码中的fopen对于放置在android应用程序中Assets文件夹中的文件失败

来自分类Dev

android-支持库23.2.0导致应用崩溃

来自分类Dev

写入stderr时,共享C库(JNI)挂在码头上

来自分类Dev

带有外部库的Java JNI'C'代码

来自分类Dev

C ++链接自定义.so库,然后使用JNI

来自分类Dev

JProgressBar使用JNI跟踪Native(C ++)应用程序

来自分类Dev

JNI - Java 应用程序的 C++ 变量值

来自分类Dev

C#最小化整个应用程序

来自分类Dev

捕获C ++库崩溃的一致方法

来自分类Dev

C ++ unique_ptr导致应用程序崩溃

来自分类Dev

堆大小不断增加,直到应用程序崩溃(C ++)

来自分类Dev

使用封送处理崩溃C#应用程序

来自分类Dev

无法访问的glXMakeCurrent使C ++应用程序崩溃

来自分类Dev

Android Studios应用崩溃

来自分类Dev

简单的Android应用崩溃

来自分类Dev

onViewStateRestored崩溃的android应用

来自分类Dev

Android ClassLoader.loadClass JNI崩溃

来自分类Dev

从JNI / C ++获取Android蓝牙适配器名称

来自分类Dev

如何在Eclipse中重建Android JNI C文件

来自分类Dev

在Android-JNI下是否必须使用“ extern” C?

来自分类Dev

无法使用JNI在Android Lollipop中从C ++到Java进行JNI调用

Related 相关文章

  1. 1

    为什么在共享库中调用c方法时android Jni崩溃?

  2. 2

    如何通过JNI / NDK获取Android应用中使用的C ++库的日志行的控制台输出(printf,cout等)

  3. 3

    Android JNI找不到C ++标准库头文件

  4. 4

    Android:Crashlytics无法发送报告C ++库崩溃

  5. 5

    PolarSSl bignum.c在使用JNI时将在Android 5.0及更高版本中导致崩溃

  6. 6

    如何在基于Cordova的Android应用中使用C库

  7. 7

    在C ++本机中将项目添加到ArrayList会使Click Listener上的android应用崩溃

  8. 8

    C ++应用程序在删除时崩溃

  9. 9

    JNI C代码中的fopen对于放置在android应用程序中Assets文件夹中的文件失败

  10. 10

    android-支持库23.2.0导致应用崩溃

  11. 11

    写入stderr时,共享C库(JNI)挂在码头上

  12. 12

    带有外部库的Java JNI'C'代码

  13. 13

    C ++链接自定义.so库,然后使用JNI

  14. 14

    JProgressBar使用JNI跟踪Native(C ++)应用程序

  15. 15

    JNI - Java 应用程序的 C++ 变量值

  16. 16

    C#最小化整个应用程序

  17. 17

    捕获C ++库崩溃的一致方法

  18. 18

    C ++ unique_ptr导致应用程序崩溃

  19. 19

    堆大小不断增加,直到应用程序崩溃(C ++)

  20. 20

    使用封送处理崩溃C#应用程序

  21. 21

    无法访问的glXMakeCurrent使C ++应用程序崩溃

  22. 22

    Android Studios应用崩溃

  23. 23

    简单的Android应用崩溃

  24. 24

    onViewStateRestored崩溃的android应用

  25. 25

    Android ClassLoader.loadClass JNI崩溃

  26. 26

    从JNI / C ++获取Android蓝牙适配器名称

  27. 27

    如何在Eclipse中重建Android JNI C文件

  28. 28

    在Android-JNI下是否必须使用“ extern” C?

  29. 29

    无法使用JNI在Android Lollipop中从C ++到Java进行JNI调用

热门标签

归档