Soh*_*med 10 android nullpointerexception parcelable kotlin android-13
我在 Android 13 上遇到此崩溃,代码如下。
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.Class.isInterface()' on a null object reference
Run Code Online (Sandbox Code Playgroud)
代码:
val temp = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU)
bundle.getParcelable(ARG_TAG, Tab::class.java)
else
bundle.getParcelable(ARG_TAG)
Run Code Online (Sandbox Code Playgroud)
DataClass(Tab)如下:
@Keep
@Parcelize
data class Tab(
val data: List<String>? = null,
val icon: String? = null,
val provider: String? = null,
val subtype: String? = null,
val title: String,
val items: Int = 0
) : Parcelable
Run Code Online (Sandbox Code Playgroud)
我找到了解决方案,使用 Android-13 的推荐方法BundleCompat
val temp = BundleCompat.getParcelable(bundle, ARG_TAG, Tab::class.java)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1732 次 |
最近记录: |