আমার কাছে মোশি ১.৮.০ ব্যবহার করে ডেটারিয়ালাইজিং / ডেজারিয়ালাইজিং ডেটা রয়েছে working
১.৯.১-তে আপগ্রেড করা এখন সিরিয়ালাইজ করার চেষ্টা করার সময় ক্রাশের দিকে নিয়ে যায়:
java.lang.IllegalArgumentException: কোটলিন টাইপ com.xxx.Spot সিরিয়াল করা যায় না। কোটলিন-প্রতিবিম্ব ব্যবহার না করেই কোটলিন শ্রেণির প্রতিফলিত সিরিয়ালাইজেশন অনির্ধারিত এবং অপ্রত্যাশিত আচরণ করেছে। দয়া করে মশি-কোটলিন আর্টিক্ট থেকে কোটলিনজসন অ্যাডাপ্টার ব্যবহার করুন বা মশি-কোটলিন-কোডজেন আর্টিক্ট থেকে কোড জেন ব্যবহার করুন।
সিরিয়ালাইজার কোডটি এখানে:
val moshi = Moshi.Builder().build()
val dataListType = newParameterizedType(List::class.java, T::class.java)
val adapter: JsonAdapter<List<T>> = moshi.adapter(dataListType)
val json = adapter.toJson(dataList)
এবং সংশ্লিষ্ট টি ক্লাস হয়
@IgnoreExtraProperties
data class Spot(
var id: String = "",
var localizedName: String? = null,
var type: String = "",
var location: Location? = null
)
আমি এখানে কী করব সে সম্পর্কে সম্পূর্ণ নির্বোধ।
সাহায্যের জন্য ধন্যবাদ!