No se pudo cargar el módulo de memtrack Error de Logcat

Estoy recibiendo un error Couldn't load memtrack module (No such file or directory) failed to load memtrack module: -2 en tiempo de ejecución.

Error de StackTrace:

  E/SoundPool(1280) : error loading /system/media/audio/ui/Effect_Tick.ogg E/SoundPool(1280) : error loading /system/media/audio/ui/KeypressStandard.ogg E/SurfaceFlinger(931) : glCheckFramebufferStatusOES error 733995180 E/memtrack(1873) : Couldn't load memtrack module (No such file or directory) E/android.os.Debug(1873): failed to load memtrack module: -2 E/libEGL(931) : called unimplemented OpenGL ES API E/libEGL(931) : called unimplemented OpenGL ES API E/libEGL(931) : called unimplemented OpenGL ES API E/libEGL(931) : called unimplemented OpenGL ES API E/SurfaceFlinger(931) : glCheckFramebufferStatusOES error 733995180 E/SurfaceFlinger(931) : got GL_FRAMEBUFFER_COMPLETE_OES error while taking screenshot E/libEGL(931) : called unimplemented OpenGL ES API E/libEGL(931) : called unimplemented OpenGL ES API 

Manifiesto:

 <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.hive" android:versionCode="1" android:versionName="1.0"> <uses-sdk android:minSdkVersion="8" android:targetSdkVersion="19" /> <uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <application android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:name="com.sit.gems.app.GemsApplication" android:theme="@style/AppTheme" > <activity android:name="com.sit.gems.activity.SplashActivity" android:label="@string/app_name" android:screenOrientation="portrait"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name="com.sit.gems.activity.HomeActivity" android:screenOrientation="portrait"></activity> </application> </manifest> 

SplashActivity.java:

 package com.sit.gems.activity; import com.example.hive.R; import android.content.Intent; import android.os.Bundle; import android.support.v4.app.FragmentActivity; public class SplashActivity extends FragmentActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.layout_home); startActivity(new Intent(SplashActivity.this,HomeActivity.class)); SplashActivity.this.finish(); } } 

Layout_home.xml:

 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <TabHost android:id="@android:id/tabhost" android:layout_width="fill_parent" android:layout_height="fill_parent" > <RelativeLayout android:layout_width="fill_parent" android:layout_height="fill_parent" > <FrameLayout android:id="@android:id/tabcontent" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_above="@android:id/tabs" > <FrameLayout android:id="@+id/tab_home" android:layout_width="fill_parent" android:layout_height="fill_parent" /> <FrameLayout android:id="@+id/tab_video" android:layout_width="fill_parent" android:layout_height="fill_parent" /> <FrameLayout android:id="@+id/tab_audio" android:layout_width="fill_parent" android:layout_height="fill_parent" > </FrameLayout> <FrameLayout android:id="@+id/tab_blog" android:layout_width="fill_parent" android:layout_height="fill_parent" > </FrameLayout> <FrameLayout android:id="@+id/tab_gal" android:layout_width="fill_parent" android:layout_height="fill_parent" > </FrameLayout> <FrameLayout android:id="@+id/tab_more" android:layout_width="fill_parent" android:layout_height="fill_parent" > </FrameLayout> </FrameLayout> <TabWidget android:id="@android:id/tabs" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:background="@drawable/bottom_bar" android:divider="@null" /> <!-- android:background="#d8e49c" --> </RelativeLayout> </TabHost> </LinearLayout> 

Salida:

Finalmente muestra la pantalla en blanco.

Introduzca aquí la descripción de la imagen

Alguien sabe cómo solucionar estos stacktrace error.Thanks de antemano.

Este error, como se puede leer en la pregunta vinculada en los comentarios anteriores , resulta ser:

"[…] un problema con la carga de un módulo de hardware, esto podría ser algo relacionado con el soporte de GPU, el manejo de tarjetas SD, básicamente cualquier cosa".

El paso 1 siguiente debe resolver este problema. Además, como puedo ver, tiene algunos nombres de paquetes extraños dentro de su manifiesto:

  • Package = "com.example.hive" en la etiqueta <manifest>
  • Android: name = "com.sit.gems.app.GemsApplication" para <application>
  • Y android: name = "com.sit.gems.activity" en <activity>

Como sabes, estas cosas no impiden que se muestre tu aplicación. Pero yo pienso:

El Couldn't load memtrack module error podría ocurrir debido a problemas de configuración de emuladores y, debido a que su proyecto contiene muchos problemas de organización, podría ayudar a dar un nuevo diseño.

Para un mejor uso y con pocas cosas, esto puede resolverse siguiendo estos consejos:


1. Pruebe otro emulador …

¡E incluso un dispositivo real! El error del memtrack module parece relacionado con su emulador. Así que cambie a Run configuration , no se olvide de cambiar la API también.


2. Registros de errores de OpenGL

Para los errores de OpenGl , como se called unimplemented OpenGL ES API , no es un error sino una declaración. Debe habilitarlo en su manifiesto (puede leer esta respuesta si está usando GLSurfaceView dentro de HomeActivity.java, podría ayudarle):

 <uses-feature android:glEsVersion="0x00020000"></uses-feature> // or <uses-feature android:glEsVersion="0x00010001" android:required="true" /> 

3. Utilice el mismo paquete

No declare nombres de paquetes diferentes a todas las etiquetas de Manifest . Usted debe tener lo mismo para Manifest , Activities , etc Algo como esto se ve bien:

 <!-- set the general package --> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.sit.gems.activity" android:versionCode="1" android:versionName="1.0" > <!-- don't set a package name in <application> --> <application ... > <!-- then, declare the activities --> <activity android:name="com.sit.gems.activity.SplashActivity" ... > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <!-- same package here --> <activity android:name="com.sit.gems.activity.HomeActivity" ... > </activity> </application> </manifest> 

4. No te pierdas con los diseños:

Debe establecer otro diseño para SplashScreenActivity.java porque no está utilizando el TabHost para la pantalla de bienvenida y esto no es un recurso seguro. Declare un diseño específico con algo diferente, como el nombre de la aplicación y el logotipo:

 // inside SplashScreen class setContentView(R.layout.splash_screen); // layout splash_screen.xml <TextView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:gravity="center" android:text="@string/appname" /> 

Evite usar un diseño en actividades que no lo usen.


5. Pantalla de bienvenida?

Por último, no entiendo claramente el propósito de su SplashScreenActivity . Establece una vista de contenido y finaliza directamente. Esto es inútil.

Como su nombre es Splash Screen , supongo que desea mostrar una pantalla antes de iniciar su HomeActivity . Por lo tanto, debe hacer esto y no utilizar el diseño TabHost 😉 :

 // FragmentActivity is also useless here! You don't use a Fragment into it, so, use traditional Activity public class SplashActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // set your splash_screen layout setContentView(R.layout.splash_screen); // create a new Thread new Thread(new Runnable() { public void run() { try { // sleep during 800ms Thread.sleep(800); } catch (InterruptedException e) { e.printStackTrace(); } // start HomeActivity startActivity(new Intent(SplashActivity.this, HomeActivity.class)); SplashActivity.this.finish(); } }).start(); } } 

Espero que este tipo de consejos le ayuden a lograr lo que desea.
Si no es el caso, hágamelo saber cómo puedo ayudarle.

Me enfrenté al mismo problema, pero cuando cambié la piel del dispositivo AVD a HVGA, funcionó.

Yo tenía el mismo error. Crear un nuevo AVD con el nivel de API adecuado resolvió mi problema.

Para las personas que usan Xamarin

Me pareció que el establecimiento de la vinculación a Sdk Ensamblados Sólo hace el truco: Proyecto -> Propiedades -> Opciones de Android -> ficha Vinculador -> Vinculación:

Introduzca aquí la descripción de la imagen

  • ARM Ensamblado backtrace PC offset
  • ¿Cómo obtener un volcado de pila más largo (lápida) desde android?
  • E.printStackTrace (); En cuerda
  • Solucionar 'la aplicación ha detenido' los errores de error
  • Android proguard incompleto stacktrace
  • ¿Formato de mensaje de excepción para contener el stacktrace entero en Google Analytics para Android?
  • ¿Cómo encontrar este seguimiento de pila?
  • Cómo ver el seguimiento de la pila de errores en android?
  • Native Android Crash - Mapa de bits no válido
  • Agrupa las trazas de pila de Java / Android en cubos únicos
  • ¿Cómo puedo obtener más detalles sobre una excepción que se produjo en mi aplicación?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.