2016-03-15 90 views
-1

所以我以前问过这个问题,但是我没有在崩溃中包含所有必要的信息。所以,每当我尝试打开这个活动,我的应用程序崩溃。 我打开应用程序的方法:当我打开一个新的活动时,应用程序崩溃

public void openGallery(View view){ 
    Intent intent = new Intent(this, PhotoGallery.class); 
    startActivity(intent); 
} 

崩溃日志:

03-15 19:02:18.525 20081-20081/com.example.ayden.dielconstruction E/AndroidRuntime: FATAL EXCEPTION: main 
                       Process: com.example.ayden.dielconstruction, PID: 20081 
                       java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.ayden.dielconstruction/com.example.ayden.dielconstruction.PhotoGallery}: android.view.InflateException: Binary XML file line #24: Binary XML file line #9: Error inflating class android.widget.ImageView 
                        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2416) 
                        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476) 
                        at android.app.ActivityThread.-wrap11(ActivityThread.java) 
                        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344) 
                        at android.os.Handler.dispatchMessage(Handler.java:102) 
                        at android.os.Looper.loop(Looper.java:148) 
                        at android.app.ActivityThread.main(ActivityThread.java:5417) 
                        at java.lang.reflect.Method.invoke(Native Method) 
                        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) 
                        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) 
                       Caused by: android.view.InflateException: Binary XML file line #24: Binary XML file line #9: Error inflating class android.widget.ImageView 
                        at android.view.LayoutInflater.inflate(LayoutInflater.java:539) 
                        at android.view.LayoutInflater.inflate(LayoutInflater.java:423) 
                        at android.view.LayoutInflater.inflate(LayoutInflater.java:374) 
                        at com.android.internal.policy.PhoneWindow.setContentView(PhoneWindow.java:393) 
                        at android.app.Activity.setContentView(Activity.java:2166) 
                        at com.example.ayden.dielconstruction.PhotoGallery.onCreate(PhotoGallery.java:11) 
                        at android.app.Activity.performCreate(Activity.java:6237) 
                        at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107) 
                        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2369) 
                        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476)  
                        at android.app.ActivityThread.-wrap11(ActivityThread.java)  
                        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344)  
                        at android.os.Handler.dispatchMessage(Handler.java:102)  
                        at android.os.Looper.loop(Looper.java:148)  
                        at android.app.ActivityThread.main(ActivityThread.java:5417)  
                        at java.lang.reflect.Method.invoke(Native Method)  
                        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)  
                        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)  
                       Caused by: android.view.InflateException: Binary XML file line #9: Error inflating class android.widget.ImageView 
                        at android.view.LayoutInflater.createView(LayoutInflater.java:645) 
                        at com.android.internal.policy.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:58) 
                        at android.view.LayoutInflater.onCreateView(LayoutInflater.java:694) 
                        at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:762) 
                        at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:704) 
                        at android.view.LayoutInflater.rInflate(LayoutInflater.java:835) 
                        at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:798) 
                        at android.view.LayoutInflater.parseInclude(LayoutInflater.java:971) 
                        at android.view.LayoutInflater.rInflate(LayoutInflater.java:831) 
                        at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:798) 
                        at android.view.LayoutInflater.inflate(LayoutInflater.java:515) 
                        at android.view.LayoutInflater.inflate(LayoutInflater.java:423)  
                        at android.view.LayoutInflater.inflate(LayoutInflater.java:374)  
                        at com.android.internal.policy.PhoneWindow.setContentView(PhoneWindow.java:393)  
                        at android.app.Activity.setContentView(Activity.java:2166)  
                        at com.example.ayden.dielconstruction.PhotoGallery.onCreate(PhotoGallery.java:11)  
                        at android.app.Activity.performCreate(Activity.java:6237)  
                        at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107)  
                        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2369)  
                        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476)  
                        at android.app.ActivityThread.-wrap11(ActivityThread.java)  
                        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344)  
                        at android.os.Handler.dispatchMessage(Handler.java:102)  
                        at android.os.Looper.loop(Looper.java:148)  
                        at android.app.ActivityThread.main(ActivityThread.java:5417)  
                        at java.lang.reflect.Method.invoke(Native Method)  
                        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)  
                        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)  
                       Caused by: java.lang.reflect.InvocationTargetException 
                        at java.lang.reflect.Constructor.newInstance(Native Method) 
                        at android.view.LayoutInflater.createView(LayoutInflater.java:619) 
                        at com.android.internal.policy.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:58)  
                        at android.view.LayoutInflater.onCreateView(LayoutInflater.java:694)  
                        at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:762)  
                        at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:704)  
                        at android.view.LayoutInflater.rInflate(LayoutInflater.java:835)  
                        at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:798)  
                        at android.view.LayoutInflater.parseInclude(LayoutInflater.java:971)  
                        at android.view.LayoutInflater.rInflate(LayoutInflater.java:831)  
                        at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:798)  
                        at android.view.LayoutInflater.inflate(LayoutInflater.java:515)  
                        at android.view.LayoutInflater.inflate(LayoutInflater.java:423)  
                        at android.view.LayoutInflater.inflate(LayoutInflater.java:374)  
                        at com.android.internal.policy.PhoneWindow.setContentView(PhoneWindow.java:393)  
                        at android.app.Activity.setContentView(Activity.java:2166)  
                        at com.example.ayden.dielconstruction.PhotoGallery.onCreate(PhotoGallery.java:11)  
                        at android.app.Activity.performCreate(Activity.java:6237)  
                        at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107)  
                        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2369)  
                        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476)  
                        at android.app.ActivityThread.-wrap11(ActivityThread.java)  
                        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344)  
                        at android.os.Handler.dispatchMessage(Handler.java:102)  
                        at android.os.Looper.loop(Looper.java:148)  
                        at android.app.ActivityThread.main(ActivityThread.java:5417)  
                        at java.lang.reflect.Method.invoke(Native Method)  
                        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)  
                        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)  
                       Caused by: java.lang.OutOfMemoryError: Failed to allocate a 201326604 byte allocation with 1944106 free bytes and 61MB until OOM 
                        at dalvik.system.VMRuntime.newNonMovableArray(Native Method) 
                        at android.graphics.BitmapFactory.nativeDecodeAsset(Native Method) 
                        at android.graphics.BitmapFactory.decodeStream(BitmapFactory.java:609) 
                        at android.graphics.BitmapFactory.decodeResourceStream(BitmapFactory.java:444) 
                        at android.graphics.drawable.Drawable.createFromResourceStream(Drawable.java:1080) 
                        at android.content.res.Resources.loadDrawableForCookie(Resources.java:2635) 
                        at android.content.res.Resources.loadDrawable(Resources.java:2540) 
                        at android.content.res.TypedArray.getDrawable(TypedArray.java:870) 
                        at android.widget.ImageView.<init>(ImageView.java:152) 
                        at android.widget.ImageView.<init>(ImageView.java:140) 
                        at android.widget.ImageView.<init>(ImageView.java:136) 
                        at java.lang.reflect.Constructor.newInstance(Native Method)  
                        at android.view.LayoutInflater.createView(LayoutInflater.java:619)  
                        at com.android.internal.policy.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:58)  
                        at android.view.LayoutInflater.onCreateView(LayoutInflater.java:694)  
                        at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:762)  
                        at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:704)  
                        at android.view.LayoutInflater.rInflate(LayoutInflater.java:835)  
                        at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:798)  
                        at android.view.LayoutInflater.parseInclude(LayoutInflater.java:971)  
                        at android.view.LayoutInflater.rInflate(LayoutInflater.java:831)  
                        at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:798)  
                        at android.view.LayoutInflater.inflate(LayoutInflater.java:515)  
                        at android.view.LayoutInflater.inflate(LayoutInflater.java:423)  
                        at android.view.LayoutInflater.inflate(LayoutInflater.java:374)  
                        at com.android.internal.policy.PhoneWindow.setContentView(PhoneWindow.java:393)  
                        at android.app.Activity.setContentView(Activity.java:2166)  
                        at com.example.ayden.dielconstruction.PhotoGallery.onCreate(PhotoGallery.java:11)  
                        at android.app.Activity.performCreate(Activity.java:6237)  
                        at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107)  
                        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2369)  
                        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476)  
                        at android.app.ActivityThread.-wrap11(ActivityThread.java)  
                        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344)  
                        at android.os.Handler.dispatchMessage(Handler.java:102)  
                        at android.os.Looper.loop(Looper.java:148)  
                        at android.app.ActivityThread.main(ActivityThread.java:5417)  
                        at java.lang.reflect.Method.invoke(Native Method)  
                        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)  
                        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)  

的照相馆XML:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:id="@+id/ScrollView01" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
android:fitsSystemWindows="true" 
android:scrollbars="none" > 

<ImageView 
    android:layout_width="wrap_content" 
    android:layout_height="300dp" 
    android:id="@+id/imageView" 
    android:src="@drawable/project1" 
    android:layout_alignParentEnd="true" 
    android:layout_above="@+id/textView4" 
    android:layout_centerHorizontal="true" /> 

<ImageView 
    android:layout_height="300dp" 
    android:layout_width="wrap_content" 
    android:id="@+id/imageView2" 
    android:src="@drawable/project2" 
    android:layout_alignParentBottom="true" 
    android:layout_alignParentStart="true" /> 
</RelativeLayout> 
+1

请粘贴您的PhotoGallery活动的布局xml文件。 –

+3

线索在这里:'android.view.InflateException:二进制XML文件行#24:二进制XML文件行#9:错误膨胀类android.widget.ImageView' ... –

+3

可能重复[Android:java.lang.OutOfMemoryError :无法分配一个23970828字节分配与2097152空闲字节和2MB,直到OOM](http://stackoverflow.com/questions/32244851/androidjava-lang-outofmemoryerror-failed-to-allocate-a-23970828-byte-allocatio) –

回答

3

显然加载图像,当你有一个out of memory error

Caused by: java.lang.OutOfMemoryError: Failed to allocate a 201326604 byte allocation with 1944106 free bytes and 61MB until OOM

你或许应该看看你的图像的大小,他们很可能是在移动应用中使用不合理的大。

作为一般规则,您应该从堆栈跟踪的顶部开始,然后往下走引起,直到看起来很熟悉。如果没有,请阅读底部的例外消息,因为这是“根源”原因。

相关问题