0

我是Android新手。我发布了我的第一个应用。我在几台设备上测试了我的应用。它工作正常。我发表了它。 40次下载,我有3个崩溃报告。我无法弄清楚我错在哪里?以及如何解决它们?或者我应该修复?崩溃报告是否意味着程序停止工作?提前致谢。播放控制台崩溃报告(OutOfMemory)

我报告:

LGE V20 (elsa), 4096MB RAM, Android 7.0 
Report 1 of 1 
java.lang.OutOfMemoryError: 
    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:855) 
    at android.content.res.ResourcesImpl.loadDrawable (ResourcesImpl.java:706) 
    at android.content.res.Resources.getDrawable (Resources.java:776) 
    at android.content.Context.getDrawable (Context.java:525) 
    at android.widget.ImageView.resolveUri (ImageView.java:840) 
    at android.widget.ImageView.setImageResource (ImageView.java:439) 
    at com.taishi.flipprogressdialog.FlipProgressDialog$1.run (FlipProgressDialog.java:181) 
    at android.os.Handler.handleCallback (Handler.java:751) 
    at android.os.Handler.dispatchMessage (Handler.java:95) 
    at android.os.Looper.loop (Looper.java:154) 
    at android.app.ActivityThread.main (ActivityThread.java:6247) 
    at java.lang.reflect.Method.invoke (Native Method) 
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:872) 
    at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:762) 

Umx(Ultimate Mobile Experience) U673C (U673C), 1024MB RAM, Android 6.0 
Report 1 of 1 
java.lang.IllegalStateException: 
    at android.app.FragmentManagerImpl.checkStateLoss (FragmentManager.java:1411) 
    at android.app.FragmentManagerImpl.enqueueAction (FragmentManager.java:1429) 
    at android.app.BackStackRecord.commitInternal (BackStackRecord.java:687) 
    at android.app.BackStackRecord.commit (BackStackRecord.java:663) 
    at android.app.DialogFragment.dismissInternal (DialogFragment.java:301) 
    at android.app.DialogFragment.dismiss (DialogFragment.java:267) 
    at com.example.genesis.policeradiostream.TopFeedsFragment$Listeleme.onPostExecute (TopFeedsFragment.java:172) 
    at com.example.genesis.policeradiostream.TopFeedsFragment$Listeleme.onPostExecute (TopFeedsFragment.java:95) 
    at android.os.AsyncTask.finish (AsyncTask.java:651) 
    at android.os.AsyncTask.access$500 (AsyncTask.java:180) 
    at android.os.AsyncTask$InternalHandler.handleMessage (AsyncTask.java:668) 
    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) 

Samsung Galaxy S5 (klteusc), 2048MB RAM, Android 6.0 
Report 1 of 1 
java.lang.OutOfMemoryError: 
    at com.google.android.exoplayer2.extractor.DefaultTrackOutput$InfoQueue.commitSample (DefaultTrackOutput.java:920) 
    at com.google.android.exoplayer2.extractor.DefaultTrackOutput.sampleMetadata (DefaultTrackOutput.java:536) 
    at com.google.android.exoplayer2.extractor.mp3.Mp3Extractor.readSample (Mp3Extractor.java:226) 
    at com.google.android.exoplayer2.extractor.mp3.Mp3Extractor.read (Mp3Extractor.java:189) 
    at com.google.android.exoplayer2.source.ExtractorMediaPeriod$ExtractingLoadable.load (ExtractorMediaPeriod.java:652) 
    at com.google.android.exoplayer2.upstream.Loader$LoadTask.run (Loader.java:295) 
    at java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1113) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:588) 
    at java.lang.Thread.run (Thread.java:818) 

回答

0

错误1和3基本上是Android系统告诉你的程序的内存量你的程序要求的位图或一些视频文件无法分配。通常情况下,当您尝试将大文件加载到内存时会发生这种情况。有很多方法可以避免像例子那样发生这种情况:确保只在将要显示的分辨率中加载图像。在100px * 100px视图中加载1920px * 1080px图像没有意义。

而当您在访问某个活动或片段元素后会发生2个事件。确保你没有访问任何与asynctask的onPostExecute方法中的活动或片段相关的东西。其他途径是在活动或碎片被破坏时取消你的异能。