ActiveAndroid には、すべてのエンティティが特定の基本クラスから継承する必要があり、(アクティビティから) Context を入力として受け取る 1 つのパラメーター コンストラクターが必要であるという制約があります。[この制約のファンではありません]。
gson を使用すると、この制約を回避する型アダプターを作成できます。
public class PolicyInstanceCreator implements InstanceCreator<Policy>{
private Context context;
public PolicyInstanceCreator(Context context) {
this.context = context;
}
@Override
public Policy createInstance(Type type) {
return new Policy(context);
}
}
Gson gson = new GsonBuilder().registerTypeAdapter(Policy.class, new PolicyInstanceCreator(context)).create();
Policy[] policies = gson.fromJson(myString, Policy[].class);
1 つの可能性は、Jackson でカスタムのデシアライザーを実装する必要があるようです。
ジャクソン用のカスタムデシリアライザーを作成する必要があることに代わるものはありますか、それとも特定の 1 つのパラメーターコンストラクターを持つ唯一のオプションですか?
代替品があれば教えてください。
ありがとう