1. Nimm jetzt an unserem 2. ADVENT-Gewinnspiel teil - Alle Informationen findest Du hier!

android.view.InflateException was will er mir denn damit sagen?

Dieses Thema im Forum "Android App Entwicklung" wurde erstellt von samarek, 23.11.2011.

  1. samarek, 23.11.2011 #1
    samarek

    samarek Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    101
    Erhaltene Danke:
    2
    Registriert seit:
    24.10.2011
    Hi

    beim starten meiner App bekomme ich eine merkwürdige Fehlermeldung, die ich nicht wirklich verstehe und die Ursache auch nicht konkret eingränzen kann

    Hier ist mal die gesamte Meldung:
    Code:
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873): FATAL EXCEPTION: main
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873): java.lang.RuntimeException: Unable to start activity ComponentInfo{aha.pa/aha.pa.Premio_AppActivity}: android.view.InflateException: Binary XML file line #2: Error inflating class <unknown>
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1651)
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1667)
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873):     at android.app.ActivityThread.access$1500(ActivityThread.java:117)
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:935)
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873):     at android.os.Handler.dispatchMessage(Handler.java:99)
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873):     at android.os.Looper.loop(Looper.java:123)
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873):     at android.app.ActivityThread.main(ActivityThread.java:3691)
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873):     at java.lang.reflect.Method.invokeNative(Native Method)
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873):     at java.lang.reflect.Method.invoke(Method.java:507)
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:847)
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:605)
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873):     at dalvik.system.NativeStart.main(Native Method)
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873): Caused by: android.view.InflateException: Binary XML file line #2: Error inflating class <unknown>
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873):     at android.view.LayoutInflater.createView(LayoutInflater.java:518)
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873):     at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56)
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873):     at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:568)
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873):     at android.view.LayoutInflater.inflate(LayoutInflater.java:386)
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873):     at android.view.LayoutInflater.inflate(LayoutInflater.java:320)
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873):     at android.view.LayoutInflater.inflate(LayoutInflater.java:276)
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873):     at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:207)
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873):     at android.app.Activity.setContentView(Activity.java:1663)
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873):     at aha.pa.Premio_AppActivity.onCreate(Premio_AppActivity.java:21)
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1615)
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873):     ... 11 more
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873): Caused by: java.lang.reflect.InvocationTargetException
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873):     at java.lang.reflect.Constructor.constructNative(Native Method)
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873):     at java.lang.reflect.Constructor.newInstance(Constructor.java:415)
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873):     at android.view.LayoutInflater.createView(LayoutInflater.java:505)
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873):     ... 21 more
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873): Caused by: java.lang.OutOfMemoryError: bitmap size exceeds VM budget
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873):     at android.graphics.BitmapFactory.nativeDecodeAsset(Native Method)
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873):     at android.graphics.BitmapFactory.decodeStream(BitmapFactory.java:563)
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873):     at android.graphics.BitmapFactory.decodeResourceStream(BitmapFactory.java:439)
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873):     at android.graphics.drawable.Drawable.createFromResourceStream(Drawable.java:697)
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873):     at android.content.res.Resources.loadDrawable(Resources.java:1997)
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873):     at android.content.res.TypedArray.getDrawable(TypedArray.java:653)
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873):     at android.view.View.<init>(View.java:1961)
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873):     at android.view.View.<init>(View.java:1909)
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873):     at android.view.ViewGroup.<init>(ViewGroup.java:286)
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873):     at android.widget.LinearLayout.<init>(LinearLayout.java:120)
    11-23 13:18:28.705: ERROR/AndroidRuntime(19873):     ... 24 more
    
    blickt da jemand durch?
     
  2. v Ralle v, 23.11.2011 #2
    v Ralle v

    v Ralle v Android-Lexikon

    Beiträge:
    913
    Erhaltene Danke:
    199
    Registriert seit:
    27.08.2010
    Frage: welche Views hast du im Layout? Weiterhin vermute ich, dass du eine ImageView mit einem riesigen Bild drin hast?! Kann das sein? Würde mich auf die OutOfMemory Exception konzentrieren.
     
  3. samarek, 23.11.2011 #3
    samarek

    samarek Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    101
    Erhaltene Danke:
    2
    Registriert seit:
    24.10.2011
    Ja, eine ImageView hab ich drin, das Bild dadrin ist ein png das knapp 22kb hat, ansonsten gibt es noch das Hintergrundbild, ebenfalls ein png liegt bei ca 91kb, also eigentlich nix großes.
    Ansonsten ist nur noch ein LinearLayout mit 4 Buttons drin, also eigentlich nichts wildes.

    Hab jetzt auch die Exception direkt beim Laden raus, jetzt tritt allerdings die gleiche Exception mit der gleichen Fehlermeldung auf wenn ich im Layout auf den ersten Button klicke und einige der zuladenden Daten landen nicht mehr in der Datenbank, wobei dass aber noch einen anderen Zusammenhang haben kann, muss nicht damit zusammenhängen.

    Nachtrag:
    Wenn die App nach der Exception beim Button klicken neugestartet wird läuft alles ohne Probleme.
     
    Zuletzt bearbeitet: 23.11.2011
  4. v Ralle v, 23.11.2011 #4
    v Ralle v

    v Ralle v Android-Lexikon

    Beiträge:
    913
    Erhaltene Danke:
    199
    Registriert seit:
    27.08.2010
  5. samarek, 23.11.2011 #5
    samarek

    samarek Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    101
    Erhaltene Danke:
    2
    Registriert seit:
    24.10.2011
    Danke für den Hinweis, der Link nutzt mir aber nicht viel, da es da um große Bilder geht und auch primär um Grafikanwendungen. Alles was ich mit Bildern mache sind Logos und Hintergrundbilder, also nichts wirklich grafiklastiges, alle meine Bilder zusammen kommen auch nicht mal in die Nähe der Größen für die der Link gedacht ist.

    Hab es in der Tat die ganze Zeit nur auf meinem Handy getestet, nicht auf dem Emulator und siehe da ... im Emulator komme ich nichtmal über das einlesen der JSON Daten hinaus, da steigt er schon mit einer OutOfMemoryException aus.

    Es geht auch wirklich nicht um viel, in der Regel scheitert es an 1-2mb, kann ich nicht einfach der Anwendung mehr Speicher zuschieben ?
     
  6. v Ralle v, 23.11.2011 #6
    v Ralle v

    v Ralle v Android-Lexikon

    Beiträge:
    913
    Erhaltene Danke:
    199
    Registriert seit:
    27.08.2010
    Nein, das geht nicht. Zumindest nicht ohne Root Rechte, wobei sicher auch dann noch schwierig ist.

    Das klingt auch alles etwas komisch. Wieso brauchst du denn so viel Speicher? Legst du irgendwelche Objekte in Schleifen immer und immer wieder an statt sie wiederzuverwenden? Designing for Performance | Android Developers
     
  7. koramu, 23.11.2011 #7
    koramu

    koramu Neuer Benutzer

    Beiträge:
    5
    Erhaltene Danke:
    0
    Registriert seit:
    23.11.2011
    ja .... hätte mich jetzt auch überrascht wenn man das einfach hätte machen können, würd ja ... allem Tür und Tor öffnen.

    Also, ich bin jetzt schon diverse mal durch den Code gegangen und hab den optimiert, optimiert, optimiert und ich gehe jetzt nochmal durch und nulle alles was ich benutze nachdem ich fertig damit bin.

    aber langsam weiss ich echt nicht mehr was ich noch machen soll
     
  8. Fr4gg0r, 23.11.2011 #8
    Fr4gg0r

    Fr4gg0r App-Anbieter (Werbung)

    Beiträge:
    2,506
    Erhaltene Danke:
    447
    Registriert seit:
    21.12.2009
    nativ kannst du allokieren wie du lustig bist.
    Nur der Java Heapspace ist begrenzt, meistens iwo zwischen 16 und 64MB
     

Diese Seite empfehlen