studio para official manager emulator emular emulador descargar create avds android android-emulator android-memory

para - emular android en android studio



android.view.InflateException: lĂ­nea de archivo XML binario#2: error al inflar la clase<desconocido> (2)

En el tiempo de ejecución, Android cambia el tamaño de las imágenes según la necesidad (según el tamaño de la pantalla y la resolución). Utiliza Bitmap para hacer el cambio de tamaño interno. Lo que, obviamente, requiere mucha memoria (asigna un poco la memoria como locos). Una forma rápida de solucionar estos problemas puede ser copiar los archivos dibujables en las carpetas ldpi, mdpi, hdpi de drawable. De esta manera, Android solo recogerá los archivos de estas carpetas y no cambiará su tamaño.

Es una excepción de tipo aleatorio, un verdadero dolor para solucionar.

Estoy desarrollando una aplicación sencilla. Acaba de terminar la pantalla de inicio. Si la orientación cambia más de dos veces, está lanzando el error y la aplicación es forzar el cierre.

Mi código de actividad:

public class PasswordActivity extends Activity implements OnClickListener { Button login; Button forgot; Button register; private static final String PREFERENCES = "prefs"; private static final String PREFERENCES_NAME = "pref_name"; SharedPreferences settings; private Cursor c; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); login=(Button)findViewById(R.id.login_login); login.setOnClickListener(this); register=(Button)findViewById(R.id.login_register); register.setOnClickListener(this); } public void onClick(View v) { } }

Mi código 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="wrap_content" android:orientation="vertical" android:background="@drawable/listpic" > <LinearLayout android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="horizontal" android:paddingTop="5dp" android:paddingLeft="3dp" android:paddingRight="3dp" > <TextView android:layout_width="fill_parent" android:layout_weight="0.75" android:layout_height="wrap_content" android:text="@string/login_user_name" android:textStyle="bold" /> <EditText android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="0.25" android:id="@+id/login_user_name" android:inputType="text" /> </LinearLayout> <LinearLayout android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="horizontal" android:paddingLeft="3dp" android:paddingRight="3dp" > <TextView android:layout_width="fill_parent" android:layout_weight="0.75" android:layout_height="wrap_content" android:text="@string/login_password" android:textStyle="bold" /> <EditText android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="0.25" android:inputType="textPassword" android:id="@+id/login_password" /> </LinearLayout> <LinearLayout android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="horizontal" android:paddingLeft="3dp" android:paddingRight="3dp" > <Button style="@style/left_button" android:text="@string/login_submit" android:id="@+id/login_login" /> <Button style="@style/right_button" android:id="@+id/login_register" android:text="@string/register" /> </LinearLayout> </LinearLayout>

Detalles del gato de registro:

10-21 12:05:59.982: D/dalvikvm(622): GC_EXTERNAL_ALLOC freed 774 objects / 56240 bytes in 61ms 10-21 12:06:15.031: D/dalvikvm(622): GC_EXTERNAL_ALLOC freed 737 objects / 30992 bytes in 59ms 10-21 12:06:18.022: E/dalvikvm-heap(622): 7596000-byte external allocation too large for this process. 10-21 12:06:18.022: E/GraphicsJNI(622): VM won''t let us allocate 7596000 bytes 10-21 12:06:18.043: D/AndroidRuntime(622): Shutting down VM 10-21 12:06:18.043: W/dalvikvm(622): threadid=1: thread exiting with uncaught exception (group=0x4001d800) 10-21 12:06:18.092: E/AndroidRuntime(622): FATAL EXCEPTION: main 10-21 12:06:18.092: E/AndroidRuntime(622): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.ravi.password/com.ravi.password.PasswordActivity}: android.view.InflateException: Binary XML file line #2: Error inflating class <unknown> 10-21 12:06:18.092: E/AndroidRuntime(622): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663) 10-21 12:06:18.092: E/AndroidRuntime(622): at android.app.ActivityThread.main(ActivityThread.java:4627) 10-21 12:06:18.092: E/AndroidRuntime(622): at java.lang.reflect.Method.invokeNative(Native Method) 10-21 12:06:18.092: E/AndroidRuntime(622): at java.lang.reflect.Method.invoke(Method.java:521) 10-21 12:06:18.092: E/AndroidRuntime(622): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868) 10-21 12:06:18.092: E/AndroidRuntime(622): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626) 10-21 12:06:18.092: E/AndroidRuntime(622): at dalvik.system.NativeStart.main(Native Method) 10-21 12:06:18.092: E/AndroidRuntime(622): Caused by: android.view.InflateException: Binary XML file line #2: Error inflating class <unknown> 10-21 12:06:18.092: E/AndroidRuntime(622): at android.view.LayoutInflater.createView(LayoutInflater.java:513) 10-21 12:06:18.092: E/AndroidRuntime(622): at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56) 10-21 12:06:18.092: E/AndroidRuntime(622): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:563) 10-21 12:06:18.092: E/AndroidRuntime(622): at android.view.LayoutInflater.inflate(LayoutInflater.java:385) 10-21 12:06:18.092: E/AndroidRuntime(622): at android.view.LayoutInflater.inflate(LayoutInflater.java:320) 10-21 12:06:18.092: E/AndroidRuntime(622): at android.view.LayoutInflater.inflate(LayoutInflater.java:276) 10-21 12:06:18.092: E/AndroidRuntime(622): at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:198) 10-21 12:06:18.092: E/AndroidRuntime(622): at android.app.Activity.setContentView(Activity.java:1647) 10-21 12:06:18.092: E/AndroidRuntime(622): at com.ravi.password.PasswordActivity.onCreate(PasswordActivity.java:34) 10-21 12:06:18.092: E/AndroidRuntime(622): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047) 10-21 12:06:18.092: E/AndroidRuntime(622): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627) 10-21 12:06:18.092: E/AndroidRuntime(622): ... 12 more 10-21 12:06:18.092: E/AndroidRuntime(622): Caused by: java.lang.reflect.InvocationTargetException 10-21 12:06:18.092: E/AndroidRuntime(622): at android.widget.LinearLayout.<init>(LinearLayout.java:115) 10-21 12:06:18.092: E/AndroidRuntime(622): at java.lang.reflect.Constructor.constructNative(Native Method) 10-21 12:06:18.092: E/AndroidRuntime(622): at java.lang.reflect.Constructor.newInstance(Constructor.java:446) 10-21 12:06:18.092: E/AndroidRuntime(622): at android.view.LayoutInflater.createView(LayoutInflater.java:500) 10-21 12:06:18.092: E/AndroidRuntime(622): ... 22 more 10-21 12:06:18.092: E/AndroidRuntime(622): Caused by: java.lang.OutOfMemoryError: bitmap size exceeds VM budget 10-21 12:06:18.092: E/AndroidRuntime(622): at android.graphics.Bitmap.nativeCreate(Native Method) 10-21 12:06:18.092: E/AndroidRuntime(622): at android.graphics.Bitmap.createBitmap(Bitmap.java:468) 10-21 12:06:18.092: E/AndroidRuntime(622): at android.graphics.Bitmap.createBitmap(Bitmap.java:435) 10-21 12:06:18.092: E/AndroidRuntime(622): at android.graphics.Bitmap.createScaledBitmap(Bitmap.java:340) 10-21 12:06:18.092: E/AndroidRuntime(622): at android.graphics.BitmapFactory.finishDecode(BitmapFactory.java:488) 10-21 12:06:18.092: E/AndroidRuntime(622): at android.graphics.BitmapFactory.decodeStream(BitmapFactory.java:462) 10-21 12:06:18.092: E/AndroidRuntime(622): at android.graphics.BitmapFactory.decodeResourceStream(BitmapFactory.java:323) 10-21 12:06:18.092: E/AndroidRuntime(622): at android.view.ViewGroup.<init>(ViewGroup.java:285) 10-21 12:06:18.092: E/AndroidRuntime(622): ... 26 more

Las imágenes son de tamaño muy pequeño alrededor de 5kb.


por favor siga el tamaño de la imagen de fondo

para dispositivo soportado

LDPI: Portrait: 200x320px Landscape: 320x200px MDPI: Portrait: 320x480px Landscape: 480x320px HDPI: Portrait: 480x800px Landscape: 800x480px XHDPI: Portrait: 720px1280px Landscape: 1280x720px