I am trying to open up fragments from app drawer and the app is crashing to what I believe is an oom error. I have tried to convert all images to webp format and it still crashes. On some devices the app is working properly, and on some it crash, and some it doesnt even open... This post is regarding for the phones that open but crash when selecting a fragment.
Here is the error from logcat:
2019-12-18 14:18:31.970 5614-5614/com.fchw.noexcusas E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.fchw.noexcusas, PID: 5614
android.view.InflateException: Binary XML file line #45: Binary XML file line #45: Error inflating class <unknown>
Caused by: android.view.InflateException: Binary XML file line #45: Error inflating class <unknown>
Caused by: java.lang.reflect.InvocationTargetException
at java.lang.reflect.Constructor.newInstance0(Native Method)
at java.lang.reflect.Constructor.newInstance(Constructor.java:430)
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:717)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:785)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:727)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:858)
at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:821)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:861)
at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:821)
at android.view.LayoutInflater.inflate(LayoutInflater.java:518)
at android.view.LayoutInflater.inflate(LayoutInflater.java:426)
at com.fchw.noexcusas.AboutUsActivity.onCreateView(AboutUsActivity.java:43)
at androidx.fragment.app.Fragment.performCreateView(Fragment.java:2600)
at androidx.fragment.app.FragmentManagerImpl.moveToState(FragmentManagerImpl.java:881)
at androidx.fragment.app.FragmentManagerImpl.moveFragmentToExpectedState(FragmentManagerImpl.java:1238)
at androidx.fragment.app.FragmentManagerImpl.moveToState(FragmentManagerImpl.java:1303)
at androidx.fragment.app.BackStackRecord.executeOps(BackStackRecord.java:439)
at androidx.fragment.app.FragmentManagerImpl.executeOps(FragmentManagerImpl.java:2079)
at androidx.fragment.app.FragmentManagerImpl.executeOpsTogether(FragmentManagerImpl.java:1869)
at androidx.fragment.app.FragmentManagerImpl.removeRedundantOperationsAndExecute(FragmentManagerImpl.java:1824)
at androidx.fragment.app.FragmentManagerImpl.execPendingActions(FragmentManagerImpl.java:1727)
at androidx.fragment.app.FragmentManagerImpl$2.run(FragmentManagerImpl.java:150)
at android.os.Handler.handleCallback(Handler.java:751)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:241)
at android.app.ActivityThread.main(ActivityThread.java:6217)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:865)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:755)
**Caused by: java.lang.OutOfMemoryError: Failed to allocate a 37454412 byte allocation with 16777216 free bytes and 30MB until OOM**
at dalvik.system.VMRuntime.newNonMovableArray(Native Method)
at android.graphics.BitmapFactory.nativeDecodeAsset(Native Method)
at android.graphics.BitmapFactory.decodeStream(BitmapFactory.java:620)
at android.graphics.BitmapFactory.decodeResourceStream(BitmapFactory.java:455)
at android.graphics.drawable.Drawable.createFromResourceStream(Drawable.java:1152)
at android.content.res.ResourcesImpl.loadDrawableForCookie(ResourcesImpl.java:794)
at android.content.res.ResourcesImpl.loadDrawable(ResourcesImpl.java:645)
at android.content.res.Resources.loadDrawable(Resources.java:858)
at android.content.res.TypedArray.getDrawable(TypedArray.java:928)
at android.view.View.<init>(View.java:4222)
at android.view.ViewGroup.<init>(ViewGroup.java:578)
at android.widget.LinearLayout.<init>(LinearLayout.java:211)
at android.widget.LinearLayout.<init>(LinearLayout.java:207)
Here is the xml to one of the fragments causing the crash
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#F1EDED"
tools:context=".AboutUsActivity">
<ScrollView
android:layout_width="match_parent"
android:id="@+id/layoutHead"
android:layout_height="wrap_content">
<RelativeLayout
android:background="@drawable/green_grass"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/nameTV"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="5dp"
android:layout_marginTop="5dp"
android:layout_marginEnd="5dp"
android:padding="20dp"
android:text="@string/gymDescribe"
android:textAlignment="center"
android:textColor="#ffffff"
android:textSize="20sp"
android:textStyle="bold" />
</RelativeLayout>
</ScrollView>
<ScrollView
android:layout_marginTop="200dp"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<LinearLayout
android:id="@+id/rellaybottom"
android:orientation="vertical"
android:background="@drawable/statbcg4"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="0dp"
android:layout_marginEnd="0dp" >
<TextView
android:id="@+id/clickwapp"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:autoLink="web"
android:linksClickable="true"
android:text="@string/wappClick"
android:gravity="center"
android:textSize="20sp"
android:textColor="@color/colorBlack"
android:textStyle="bold">
</TextView>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:autoLink="web"
android:linksClickable="true"
android:text="@string/wapp"
android:gravity="center"
android:textSize="20sp"
android:textColor="@color/colorBlack"
android:textColorLink="@color/colorWhite"
android:textStyle="bold">
</TextView>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:autoLink="web"
android:linksClickable="true"
android:text="@string/facbeookClick"
android:gravity="center"
android:textSize="20sp"
android:textColor="#3b5998"
android:textStyle="bold">
</TextView>
<TextView
android:id="@+id/clickfb"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:autoLink="web"
android:linksClickable="true"
android:text="@string/facebook"
android:gravity="center"
android:textSize="20sp"
android:textColorLink="@color/colorWhite"
android:textStyle="bold">
</TextView>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="15dp"
android:text="Cargando Fotos..."
android:textSize="15dp"
android:textAlignment="center"/>
<ImageView
android:id="@+id/schedulePhotoIV"
android:contentDescription="@string/app_name"
android:layout_marginTop="20dp"
android:layout_width="match_parent"
android:layout_height="700dp"
android:src="@drawable/ic_cloud">
</ImageView>
<View
android:layout_width="match_parent"
android:layout_height="5dp"
android:layout_marginTop="20dp"
android:background="@color/colorBlack" />
<ImageView
android:id="@+id/pricesPhotoIV"
android:contentDescription="@string/app_name"
android:layout_marginTop="20dp"
android:layout_width="match_parent"
android:layout_height="700dp"
android:src="@drawable/ic_cloud">
</ImageView>
<View
android:layout_width="match_parent"
android:layout_height="5dp"
android:layout_marginTop="20dp"
android:background="@color/colorBlack" />
<ImageView
android:id="@+id/planbBigIV"
android:contentDescription="@string/app_name"
android:layout_marginTop="20dp"
android:layout_width="match_parent"
android:layout_height="700dp"
android:src="@drawable/ic_cloud">
</ImageView>
<View
android:layout_width="match_parent"
android:layout_height="5dp"
android:layout_marginTop="20dp"
android:background="@color/colorBlack" />
<ImageView
android:id="@+id/locationPhotoIV"
android:contentDescription="@string/app_name"
android:layout_marginTop="20dp"
android:layout_width="match_parent"
android:layout_height="700dp"
android:src="@drawable/ic_cloud">
</ImageView>
</LinearLayout>
</ScrollView>