Android 활동의 UI를로드하는 동안 Java 메모리 부족 오류

Dhruv

ImageButton, 2 개의 textView, textField 및 ImageView에서 매우 기본적인 활동을로드하려고했습니다.

    <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="match_parent"
android:clickable="false"
android:id="@+id/namescreenactivity">

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textAppearance="?android:attr/textAppearanceLarge"
    android:text="Welcome to your Pet House"
    android:id="@+id/Welcome"
    android:textColor="#ff000000"
    android:textStyle="bold"
    android:layout_marginTop="94dp"
    android:layout_alignParentTop="true"
    android:layout_centerHorizontal="true" />

<EditText android:id="@+id/edit_message"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:hint="@string/edit_message"
    android:layout_marginTop="36dp"
    android:textColor="#ff000000"
    android:layout_below="@+id/Welcome"
    android:layout_alignEnd="@+id/Welcome" />

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textAppearance="?android:attr/textAppearanceMedium"
    android:text="Name your pet"
    android:id="@+id/NameLabel"
    android:layout_alignTop="@+id/edit_message"
    android:layout_alignStart="@+id/Welcome" />

<ImageView
    android:layout_width="100dp"
    android:layout_height="100dp"
    android:src="@drawable/sun"
    android:layout_alignBottom="@+id/Welcome"
    android:layout_alignParentEnd="true"
    android:layout_marginBottom="39dp"
    android:id="@+id/sun" />

<ImageButton
    android:layout_width="250dp"
    android:layout_height="250dp"
    android:id="@+id/imageButton"
    android:src="@drawable/camel"
    android:clickable="true"
    android:scaleType="fitXY"
    android:onClick="sendMessage"
    android:layout_alignParentBottom="true"
    android:layout_alignEnd="@+id/edit_message"
    android:layout_marginBottom="31dp" />

그리고 MainActivity.java의 OnCreate 함수에서 나는 단순히 setContentView (R.layout.activity_main); 그러나 내 응용 프로그램의 메모리 사용량 그래프는 약 44MB를 사용하고 있음을 보여줍니다 (앱에있는 모든 이미지의 총 크기는 1MB 미만이고 ImageButton에 사용 된 크기는 193KB 임).

이것이 내 앱이 충돌하고 메모리 부족 오류가 발생하는 이유라고 생각합니다.

Caused by: java.lang.OutOfMemoryError: Failed to allocate a 138018828 byte allocation with 4194304 free bytes and 35MB 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:988)
        at android.content.res.Resources.loadDrawableForCookie(Resources.java:2474)
        at android.content.res.Resources.loadDrawable(Resources.java:2381)
        at android.content.res.TypedArray.getDrawable(TypedArray.java:749)
at android.widget.ImageView.<init>(ImageView.java:146)
at android.widget.ImageButton.<init>(ImageButton.java:86)
at android.widget.ImageButton.<init>(ImageButton.java:82)
at android.widget.ImageButton.<init>(ImageButton.java:78)
at java.lang.reflect.Constructor.newInstance(Native Method)
at java.lang.reflect.Constructor.newInstance(Constructor.java:288)
at android.view.LayoutInflater.createView(LayoutInflater.java:607)
at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:55)
at android.view.LayoutInflater.onCreateView(LayoutInflater.java:682)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:741)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:806)
at android.view.LayoutInflater.inflate(LayoutInflater.java:504)
at android.view.LayoutInflater.inflate(LayoutInflater.java:414)
at android.view.LayoutInflater.inflate(LayoutInflater.java:365)
at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:378)
at android.app.Activity.setContentView(Activity.java:2145)
at com.example.healthypetdhr.MainActivity.onCreate(MainActivity.java:37)
at android.app.Activity.performCreate(Activity.java:5990)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1106)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2278)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2390)
at android.app.ActivityThread.access$800(ActivityThread.java:151)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1303)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5257)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372) 
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)'

무엇이 잘못되었는지,이 문제를 어떻게 해결할 수 있는지 파악하도록 도와주세요.

mfaisalhyder

이미지가 크고 drawable (ldpi / mdpi ...) 폴더에 배치 될 때 발생할 수 있으므로 Android OS는 필요에 따라 크기를 조정하는 경향이 있지만 귀하의 경우에는 이미지가 매우 작다고 말했지만 여전히 해당 이미지를 넣으십시오. 내부:

res/drawable-nodpi

크기 조정을 방지하고있는 그대로 사용할 수 있습니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

Android 장치에서 디버깅하는 동안 메모리 부족 오류

분류에서Dev

netbeans의 프로세서를 설치하는 동안 Java 메모리 부족 오류

분류에서Dev

Android에서 더 큰 파일을 업로드하는 동안 메모리 부족 오류가 표시됩니까?

분류에서Dev

Android Studio : 메모리 부족 오류 (활동 수명주기?)

분류에서Dev

메모리 부족 오류, permgen, Java 8에서 Java 7로 이동

분류에서Dev

단일 활동에서 여러 GIF를 사용하는 동안 메모리 부족 오류

분류에서Dev

Imageview의 Android 메모리 부족 오류

분류에서Dev

Android Studio의 메모리 부족 오류

분류에서Dev

활동을 여러 번 다시로드 할 때 메모리 부족 오류

분류에서Dev

스크롤하는 동안 Xamarin.Android의 ListView 메모리 부족

분류에서Dev

체인 코드를 배포하는 동안 메모리 부족

분류에서Dev

스크래치에서 VGG16을 구현하는 동안 메모리 부족 오류

분류에서Dev

메모리 부족 오류로 인해 Setalphabitmap이 작동하지 않습니다.

분류에서Dev

netbeans의 프로세서 설치 중 Java 메모리 부족 오류

분류에서Dev

ImageView로 활동을 반복적으로 열면 메모리 부족 오류가 발생합니다.

분류에서Dev

활동을 재 작성하면 메모리 부족 오류가 발생합니다.

분류에서Dev

Android : GridView를 스크롤하는 동안 메모리 부족 예외가 발생합니까?

분류에서Dev

gridView Android Eclipse의 메모리 부족 오류

분류에서Dev

동일한 패키지의 버튼에서 JFrame을 여는 동안 메모리 부족 오류가 발생합니까?

분류에서Dev

Android 메모리 부족 오류?

분류에서Dev

Android Studio 메모리 부족 오류 ViewFlipper

분류에서Dev

Python Spark : Java 메모리 부족 오류

분류에서Dev

메모리를 확보하는 동안 분할 오류 오류

분류에서Dev

ConnectionQueueStatsProvider의 메모리 부족 오류

분류에서Dev

크롤러가 몇 시간 동안 작동 한 후 Jsoup 메모리 부족 오류

분류에서Dev

안드로이드 범용 이미지 로더 메모리 부족 오류

분류에서Dev

활동 전환시 메모리 부족

분류에서Dev

Java : 메모리 부족 오류로 인해 대형 Guava 테이블 개체의 직렬화가 실패 함

분류에서Dev

메모리 부족 오류 : 빌드 작업 및 브라우저 동기화 시계 조립

Related 관련 기사

  1. 1

    Android 장치에서 디버깅하는 동안 메모리 부족 오류

  2. 2

    netbeans의 프로세서를 설치하는 동안 Java 메모리 부족 오류

  3. 3

    Android에서 더 큰 파일을 업로드하는 동안 메모리 부족 오류가 표시됩니까?

  4. 4

    Android Studio : 메모리 부족 오류 (활동 수명주기?)

  5. 5

    메모리 부족 오류, permgen, Java 8에서 Java 7로 이동

  6. 6

    단일 활동에서 여러 GIF를 사용하는 동안 메모리 부족 오류

  7. 7

    Imageview의 Android 메모리 부족 오류

  8. 8

    Android Studio의 메모리 부족 오류

  9. 9

    활동을 여러 번 다시로드 할 때 메모리 부족 오류

  10. 10

    스크롤하는 동안 Xamarin.Android의 ListView 메모리 부족

  11. 11

    체인 코드를 배포하는 동안 메모리 부족

  12. 12

    스크래치에서 VGG16을 구현하는 동안 메모리 부족 오류

  13. 13

    메모리 부족 오류로 인해 Setalphabitmap이 작동하지 않습니다.

  14. 14

    netbeans의 프로세서 설치 중 Java 메모리 부족 오류

  15. 15

    ImageView로 활동을 반복적으로 열면 메모리 부족 오류가 발생합니다.

  16. 16

    활동을 재 작성하면 메모리 부족 오류가 발생합니다.

  17. 17

    Android : GridView를 스크롤하는 동안 메모리 부족 예외가 발생합니까?

  18. 18

    gridView Android Eclipse의 메모리 부족 오류

  19. 19

    동일한 패키지의 버튼에서 JFrame을 여는 동안 메모리 부족 오류가 발생합니까?

  20. 20

    Android 메모리 부족 오류?

  21. 21

    Android Studio 메모리 부족 오류 ViewFlipper

  22. 22

    Python Spark : Java 메모리 부족 오류

  23. 23

    메모리를 확보하는 동안 분할 오류 오류

  24. 24

    ConnectionQueueStatsProvider의 메모리 부족 오류

  25. 25

    크롤러가 몇 시간 동안 작동 한 후 Jsoup 메모리 부족 오류

  26. 26

    안드로이드 범용 이미지 로더 메모리 부족 오류

  27. 27

    활동 전환시 메모리 부족

  28. 28

    Java : 메모리 부족 오류로 인해 대형 Guava 테이블 개체의 직렬화가 실패 함

  29. 29

    메모리 부족 오류 : 빌드 작업 및 브라우저 동기화 시계 조립

뜨겁다태그

보관