【问题标题】:Weird fatal crash with ExifInterface and VM abortingExifInterface 和 VM 中止导致奇怪的致命崩溃
【发布时间】:2013-01-13 23:35:23
【问题描述】:

ExifInterface 发生奇怪的致命崩溃。导致崩溃的行是这样的,非常简单(Foto.java:341):

ExifInterface exif = new ExifInterface(filename);

我只得到了一些图片的崩溃。更奇怪的是,如果我看到一张普通图片的exif,关闭程序,再打开程序看到有问题的图片,我就从上一张图片中得到了exif。相当的诡计。

知道是什么原因造成的吗?轨迹轨迹如下。

01-13 21:23:42.148: W/dalvikvm(10868): JNI WARNING: received null jstring
01-13 21:23:42.148: W/dalvikvm(10868):              in Landroid/media/ExifInterface;.getAttributesNative:(Ljava/lang/String;)Ljava/lang/String; (GetStringUTFChars)
01-13 21:23:42.148: I/dalvikvm(10868): "main" prio=5 tid=1 NATIVE
01-13 21:23:42.148: I/dalvikvm(10868):   | group="main" sCount=0 dsCount=0 obj=0x40c6e460 self=0x12938
01-13 21:23:42.148: I/dalvikvm(10868):   | sysTid=10868 nice=0 sched=0/0 cgrp=default handle=1075021096
01-13 21:23:42.148: I/dalvikvm(10868):   | schedstat=( 618641072 82163138 362 ) utm=57 stm=4 core=1
01-13 21:23:42.148: I/dalvikvm(10868):   at android.media.ExifInterface.getAttributesNative(Native Method)
01-13 21:23:42.148: I/dalvikvm(10868):   at android.media.ExifInterface.loadAttributes(ExifInterface.java:204)
01-13 21:23:42.148: I/dalvikvm(10868):   at android.media.ExifInterface.<init>(ExifInterface.java:121)
01-13 21:23:42.148: I/dalvikvm(10868):   at com.floritfoto.apps.xvf.Foto.printexif(Foto.java:341)
01-13 21:23:42.148: I/dalvikvm(10868):   at com.floritfoto.apps.xvf.Foto$3.onLongClick(Foto.java:449)
01-13 21:23:42.148: I/dalvikvm(10868):   at android.view.View.performLongClick(View.java:3656)
01-13 21:23:42.148: I/dalvikvm(10868):   at android.view.View$CheckForLongPress.run(View.java:14270)
01-13 21:23:42.148: I/dalvikvm(10868):   at android.os.Handler.handleCallback(Handler.java:605)
01-13 21:23:42.148: I/dalvikvm(10868):   at android.os.Handler.dispatchMessage(Handler.java:92)
01-13 21:23:42.148: I/dalvikvm(10868):   at android.os.Looper.loop(Looper.java:137)
01-13 21:23:42.148: I/dalvikvm(10868):   at android.app.ActivityThread.main(ActivityThread.java:4507)
01-13 21:23:42.148: I/dalvikvm(10868):   at java.lang.reflect.Method.invokeNative(Native Method)
01-13 21:23:42.148: I/dalvikvm(10868):   at java.lang.reflect.Method.invoke(Method.java:511)
01-13 21:23:42.148: I/dalvikvm(10868):   at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:980)
01-13 21:23:42.148: I/dalvikvm(10868):   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:747)
01-13 21:23:42.148: I/dalvikvm(10868):   at dalvik.system.NativeStart.main(Native Method)
01-13 21:23:42.148: E/dalvikvm(10868): VM aborting
01-13 21:23:42.148: A/libc(10868): Fatal signal 11 (SIGSEGV) at 0xdeadd00d (code=1)

【问题讨论】:

  • 好像这个和CheckJNI = ON有关?

标签: android exif


【解决方案1】:

new ExifInterface(null) 会导致 SIGSEGV。

这里的答案相同:Android Bitmap Fatal signal 11 (SIGSEGV)

【讨论】:

    猜你喜欢
    • 2011-01-18
    • 2013-10-11
    • 1970-01-01
    • 1970-01-01
    • 2018-02-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-14
    相关资源
    最近更新 更多