#困っていること
複数のラジオボタンがあるActivityにおいて、ボタンを選択すると画像が切り替わるようなものを作っているのですが、フレーム落ちが激しく、そのまま落ちてしまいます。
画像の大きさも1つ130KBのpngファイルでそこまで大きくはないので何故落ちるのか原因がわかりません。
端末のメモリは2814MBほどあります。
画像は透過pngです
このラジオボタンがあるActivityに遷移した瞬間にアプリが落ちてしまいます。画像を読み込めるときもあれば読み込めないときもあると言った感じです。
下記にソースコードとエラーコードを記載します。
Java
1public class SelectCharacterActivity extends AppCompatActivity { 2 3 BootstrapButton IAbtns; 4 SharedPreferences sp; 5 SharedPreferences.Editor editor; 6 ImageView charImg; 7 8 9 @Override 10 protected void onCreate(Bundle savedInstanceState) { 11 super.onCreate(savedInstanceState); 12 setContentView(R.layout.activity_select_character); 13 ButterKnife.bind(this); 14 15 sp = getSharedPreferences("DataSave",MODE_PRIVATE); 16 editor = sp.edit(); 17 editor.putString("charName","aaa"); 18 editor.apply(); 19 charImg = findViewById(R.id.charImgs); 20 charImg.setImageResource(R.drawable.aaa); 21 22 } 23 24 @OnCheckedChanged({R.id.IABtn, R.id.ONEBtn, R.id.SasaraBtn, R.id.TsudumiBtn}) 25 public void onRadioButtonCheckChanged(CompoundButton button, boolean checked) { 26 if(checked) { 27 28 switch (button.getId()) { 29 case R.id.IABtn: 30 editor.putString("charName", "aaa"); 31 charImg.setImageResource(R.drawable.aaa); 32 editor.apply(); 33 break; 34 case R.id.ONEBtn: 35 charImg.setImageResource(R.drawable.bbb); 36 editor.putString("charName", "bbb"); 37 editor.apply(); 38 break; 39 case R.id.SasaraBtn: 40 editor.putString("charName", "ccc"); 41 charImg.setImageResource(R.drawable.ccc); 42 editor.apply(); 43 break; 44 case R.id.TsudumiBtn: 45 editor.putString("charName", "ddd"); 46 charImg.setImageResource(R.drawable.ddd); 47 editor.apply(); 48 break; 49 } 50 } 51 }
Error
103-17 15:08:42.816 29243-29243/[MYDOMEIN]I/InstantRun: starting instant run server: is main process 203-17 15:08:43.306 29243-29243/[MYDOMEIN]W/art: Before Android 4.1, method android.graphics.PorterDuffColorFilter android.support.graphics.drawable.VectorDrawableCompat.updateTintFilter(android.graphics.PorterDuffColorFilter, android.content.res.ColorStateList, android.graphics.PorterDuff$Mode) would have incorrectly overridden the package-private method in android.graphics.drawable.Drawable 303-17 15:08:44.547 29243-29243/[MYDOMEIN]D/Atlas: Validating map... 403-17 15:08:44.656 29243-29277/[MYDOMEIN]I/Adreno: QUALCOMM build : 2789c8f, 5 Build Date : 04/08/15 6 OpenGL ES Shader Compiler Version: E031.25.03.07 7 Local Branch : mybranch8901104 8 Remote Branch : quic/LA.BF64.1.1_rb1.26 9 Remote Branch : NONE 10 Reconstruct Branch : AU_LINUX_ANDROID_LA.BF64.1.1_RB1.05.00.02.172.059 + 6f1f8ee + 9c17525 + 2bb8018 + 9bf0030 + c50f11d + 5d3f8f7 + 50ac959 + 2789c8f + NOTHING 1103-17 15:08:46.118 29243-29243/[MYDOMEIN]I/Timeline: Timeline: Activity_idle id: android.os.BinderProxy@1ac15552 time:17687874 1203-17 15:14:43.433 29243-29243/[MYDOMEIN]I/Timeline: Timeline: Activity_idle id: android.os.BinderProxy@1ac15552 time:18045189 1303-17 15:14:49.633 29243-29243/[MYDOMEIN]I/Timeline: Timeline: Activity_launch_request id:[MYDOMEIN]time:18051389 1403-17 15:14:54.325 29243-29243/[MYDOMEIN]I/Choreographer: Skipped 204 frames! The application may be doing too much work on its main thread. 1503-17 15:14:57.705 29243-29243/[MYDOMEIN]I/Timeline: Timeline: Activity_idle id: android.os.BinderProxy@176d462b time:18059461 1603-17 15:15:02.521 29243-29243/[MYDOMEIN]I/Choreographer: Skipped 196 frames! The application may be doing too much work on its main thread. 1703-17 15:15:06.645 29243-29243/[MYDOMEIN]I/Choreographer: Skipped 246 frames! The application may be doing too much work on its main thread. 1803-17 15:15:11.621 29243-29243/[MYDOMEIN]I/Choreographer: Skipped 297 frames! The application may be doing too much work on its main thread. 1903-17 15:15:18.638 29243-29243/[MYDOMEIN]I/Choreographer: Skipped 419 frames! The application may be doing too much work on its main thread. 2003-17 15:15:22.768 29243-29243/[MYDOMEIN]I/Choreographer: Skipped 247 frames! The application may be doing too much work on its main thread. 2103-17 15:15:29.487 29243-29243/[MYDOMEIN]I/Choreographer: Skipped 190 frames! The application may be doing too much work on its main thread. 2203-17 15:15:33.807 29243-29243/[MYDOMEIN]E/art: Throwing OutOfMemoryError "Failed to allocate a 86400012 byte allocation with 8881632 free bytes and 8MB until OOM" 2303-17 15:15:33.807 29243-29243/[MYDOMEIN]D/skia: --- allocation failed for scaled bitmap 2403-17 15:15:33.815 29243-29243/[MYDOMEIN]E/AndroidRuntime: FATAL EXCEPTION: main 25 Process: jp.com.tabe.ceviobikeapp, PID: 29243 26 java.lang.OutOfMemoryError: Failed to allocate a 86400012 byte allocation with 8881632 free bytes and 8MB until OOM 27 at dalvik.system.VMRuntime.newNonMovableArray(Native Method) 28 at android.graphics.BitmapFactory.nativeDecodeAsset(Native Method) 29 at android.graphics.BitmapFactory.decodeStream(BitmapFactory.java:609) 30 at android.graphics.BitmapFactory.decodeResourceStream(BitmapFactory.java:444) 31 at android.graphics.drawable.Drawable.createFromResourceStream(Drawable.java:973) 32 at android.content.res.Resources.loadDrawableForCookie(Resources.java:2423) 33 at android.content.res.Resources.loadDrawable(Resources.java:2330) 34 at android.content.res.Resources.getDrawable(Resources.java:758) 35 at android.content.Context.getDrawable(Context.java:402) 36 at android.support.v4.content.ContextCompat.getDrawable(ContextCompat.java:463) 37 at android.support.v7.widget.AppCompatDrawableManager.getDrawable(AppCompatDrawableManager.java:203) 38 at android.support.v7.widget.AppCompatDrawableManager.getDrawable(AppCompatDrawableManager.java:191) 39 at android.support.v7.content.res.AppCompatResources.getDrawable(AppCompatResources.java:102) 40 at android.support.v7.widget.AppCompatImageHelper.setImageResource(AppCompatImageHelper.java:86) 41 at android.support.v7.widget.AppCompatImageView.setImageResource(AppCompatImageView.java:94) 42 at jp.com.tabe.ceviobikeapp.SelectCharacterActivity.onRadioButtonCheckChanged(SelectCharacterActivity.java:61) 43 at jp.com.tabe.ceviobikeapp.SelectCharacterActivity_ViewBinding$3.onCheckedChanged(SelectCharacterActivity_ViewBinding.java:58) 44 at android.widget.CompoundButton.setChecked(CompoundButton.java:152) 45 at android.widget.CompoundButton.toggle(CompoundButton.java:112) 46 at android.widget.RadioButton.toggle(RadioButton.java:78) 47 at android.widget.CompoundButton.performClick(CompoundButton.java:124) 48 at android.view.View$PerformClick.run(View.java:19851) 49 at android.os.Handler.handleCallback(Handler.java:739) 50 at android.os.Handler.dispatchMessage(Handler.java:95) 51 at android.os.Looper.loop(Looper.java:135) 52 at android.app.ActivityThread.main(ActivityThread.java:5438) 53 at java.lang.reflect.Method.invoke(Native Method) 54 at java.lang.reflect.Method.invoke(Method.java:372) 55 at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:917) 56 at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:712)
#環境
Android 5.0.2
Aquos Xx-y

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。