Android: Señal fatal 11 (SIGSEGV) en 0x00000000 (código = 1) en movie.draw

Estoy intentando exhibir un gif animado en un ImageView que usa la clase androide de la película en el método del onDraw como sigue:

@Override protected void onDraw(Canvas canvas) { canvas.drawColor(Color.TRANSPARENT); super.onDraw(canvas); long now = android.os.SystemClock.uptimeMillis(); if (movieStart == 0) { movieStart = now; } movie = getMovieFromGif(); if (movie != null && movie.duration() > 0) { try { int relTime = (int) ((now - movieStart) % movie.duration()); movie.setTime(relTime); float movie_height = convertDpToPixels(movie.height()); float movie_width = convertDpToPixels(movie.width()); float new_movie_height = movie_height; float new_movie_width = movie_width; float movie_ratio = movie_width / movie_height; if (new_movie_width > container_width) { new_movie_width = container_width; new_movie_height = new_movie_width / movie_ratio; } if (new_movie_height > container_height) { new_movie_height = container_height; new_movie_width = new_movie_height * movie_ratio; } float scale_x = container_width / new_movie_width; float scale_y = container_height / new_movie_height; scale_x = new_movie_width / (float) movie.width(); scale_y = new_movie_height / (float) movie.height(); canvas.scale(scale_x, scale_y); float x = 0; if ((float) this.getWidth() > new_movie_width) { x = ((this.getWidth() - (movie.width() * scale_x)) / 2f) / scale_x; } movie.draw(canvas, x, 0); this.invalidate(); } catch (Exception ex) { Log.i("onDraw()", "Error: " + ex.getMessage()); } } } 

Código funciona muy bien en la mayoría de los dispositivos, pero en Huawei Ascend P7 y galaxia Samsung a5, la aplicación se bloquea en movie.draw (lienzo, x, 0) con la excepción:

A / libc (23632): Señal fatal 11 (SIGSEGV) en 0x00000000 (código = 1), subproceso 23632

¿Alguna idea de lo que está mal con movie.draw en estos dispositivos?

ACTUALIZADO: A continuación se muestra el seguimiento completo de la pila

04-29 12: 09: 24.979: D / Actividad (18951): # 2 setTransGradationModeColor a true
04-29 12: 09: 25.049: I / Adreno-EGL (18951):: EGL 1.4 QUALCOMM generar: ()
04-29 12: 09: 25.049: I / Adreno-EGL (18951): OpenGL ES Shader Compiler versión: E031.24.02.07
04-29 12: 09: 25.049: I / Adreno-EGL (18951): Fecha de construcción: 08/06/14
04-29 12: 09: 25.049: I / Adreno-EGL (18951): Local Rama: rb1
04-29 12: 09: 25.049: I / Adreno-EGL (18951): Remoto Subdivisión:
04-29 12: 09: 25.049: I / Adreno-EGL (18951): Parches Locales:
04-29 12: 09: 25.049: I / Adreno-EGL (18951): Reconstruct Branch:
04-29 12: 09: 25.079: D / OpenGLRenderer (18951): habilitar modo de depuración 0
04-29 12: 09: 25.109: D / skia (18951): streamToByte: Imagen agif de entrada de más de 30MB.
04-29 12: 09: 25.109: D / skia (18951): streamToByte: Quram agif – longitud: 10473
04-29 12: 09: 25.109: D / skia (18951): Guiño AGIF Move Constructer Fin 9, totalTiempo: 2700
04-29 12: 09: 25.109: A / libc (18951): Señal fatal 11 (SIGSEGV) en 0x00000000 (código = 1), hilo 18951 (com.android.gif)

El error de señal fatal se produce después de la ejecución del código movie.draw (), rest es el rastro de la pila de ejecución de líneas antes de movie.draw ().

Pude resolver el problema deshabilitando la aceleración de hardware de Android:

Android: hardwareAccelerated = "false"

  • Mensajería Firebase - "demasiadas alarmas" en los dispositivos Android de Samsung
  • Android HttpRequest resultado en caché durante 10 minutos en dispositivos Samsung Galaxy
  • Native crash en /system/lib/libart.so en lollipop android 5.0.1 samsung
  • Android SpeechRecognizer detecta su propio pitido como voz y salidas
  • Desactivación de Samsung "Auto Network Switch" para conexión WiFi
  • Android: Configuración de AVD para Galaxy S3-Like AVD
  • Recuperación de datos de huellas digitales?
  • Detección del navegador Android Phone
  • Mensaje "Tipo de etiqueta NFC no admitido"
  • ¿Cómo grabar vídeo de ancho y altura en el dispositivo samsung android?
  • AssetManager $ AssetInputStream.finalize () se ha agotado después de 10 segundos
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.