CallLogクラス内の着信/発信通話、クラス内の着信/発信 SMS SmsLog、およびクラスを介して送受信されたバイトに関する情報を保存する Android アプリを構築していますDataLog。Jackson を介してさまざまなオブジェクトの JSON 配列に簡単に変換できることを期待してJsonLog、単一ArrayListのs を作成できるように、それらすべてにインターフェイスを実装させました。JsonLog
ただし、JSON ファイルを逆シリアル化するたびに、このエラーが発生し続けました。
com.fasterxml.jackson.databind.JsonMappingException: Can not construct instance
of com.project.pojos.JsonLog, problem: abstract types either need to be mapped
to concrete types, have custom deserializer, or be instantiated with additional
type information
どうすればこれを解決できますか? すべてのJsonLogクラスには文字列属性がありますtype。これは、in_callまたはout_callfor CallLog、in_smsまたはout_smsfor SmsLog、およびdataforDataLogです。