このインスペクションは JSON シリアライズメソッドへの呼び出しのうち、適切にパラメーター化されていない場合に実行時に望ましくないリフレクションが発生する可能性のあるものを特定します。
このインスペクションは、具体的には kotlinx.serialization.json.Json パッケージから次のメソッドへの呼び出しを確認します:
decodeFromString
decodeFromJsonElement
encodeToString
encodeToJsonElement
これらのメソッドは明示的なシリアライズ/デシリアライズ戦略パラメーターを常に指定して呼び出し、Fleet の マルチプラットフォーム環境で問題を引き起こす可能性があるリフレクションに依存しないようにする必要があります。
問題のあるコードの例:
Json.encodeToString(myObject) // SerializationStrategy がありません
正しい使用方法:
Json.encodeToString(MyType.serializer(), myObject)