Setelah memperbarui ke API 27 dan Pustaka Dukungan 27.0.2 tiba-tiba saya mendapatkan banyak jejak tumpukan ini di Crashlytics:
Fatal Exception: java.lang.IllegalArgumentException
at android.os.Parcel.readException(Parcel.java:1544)
at android.os.Parcel.readException(Parcel.java:1493)
at android.app.ActivityManagerProxy.isTopOfTask(ActivityManagerNative.java:5108)
at android.app.Activity.isTopOfTask(Activity.java:5688)
at android.app.Activity.startActivityForResult(Activity.java:3973)
at android.support.v4.app.BaseFragmentActivityApi16.startActivityForResult(Source:54)
at android.support.v4.app.FragmentActivity.startActivityForResult(Source:67)
Saya menyebutnya seperti:
ActivityOptions options = ActivityOptions.makeCustomAnimation(activity, R.anim.slide_in_from_right, R.anim.fade_out);
startActivityForResult( intent, REQ_ACTION, options.toBundle());
Saya tidak dapat membaca kode sumbernya karena belum dirilis. Saya bahkan mencoba mengganti dan menggunakan kode Android-26, tetapi berbeda.
Ada peringatan untuk panggilan di atas yang mengatakan bahwa BaseFragmentActivityApi16.startActivityForResult hanya dapat dipanggil dari grup perpustakaan yang sama, jadi saya memperbaikinya dengan menggunakan ActivityCompat, tetapi menurut saya ini tidak akan menyelesaikan masalah kerusakan.
Apakah ini masalah platform atau bisakah saya memperbaikinya?
Edit
if (Build.VERSION.SDK_INT >= 21) {
ActivityOptions options = ActivityOptions.makeCustomAnimation(activity, R.anim.slide_in_from_right, R.anim.fade_out);
startActivityForResult(intent, REQ_ACTION, options.toBundle());
} else {
ActivityOptions options = ActivityOptions.makeCustomAnimation(activity, R.anim.slide_in_from_right, R.anim.fade_out);
ActivityCompat.startActivityForResult(this, intent, REQ_ACTION, options.toBundle());
}
Jika saya ubah ke atas sesuai link di komentar saya, Android Studio mengeluh seperti di atas. Ini mungkin terkait dengan masalahnya.