Étant donné que l'utilisation de Parsable
est conçu pour le transport IPC à haute performance, comme mentionné dans certains commentaires, j'ai essayé d'utiliser une approche différente.
Mon approche utilise GSON bibliothèque de google.
Exemple
public class Person{
private String name;
private int age;
// Getter and Setters omitted
}
Vous pouvez avoir une méthode dans la classe utilitaire qui renvoie l'instance Gson, ceci dans un souci de propreté du code et d'organisation. J'utiliserai GsonBuilder au cas où quelqu'un voudrait enregistrer un adaptateur personnalisé.
public class Utils {
private static Gson gson;
public static Gson getGsonParser() {
if(null == gson) {
GsonBuilder builder = new GsonBuilder();
gson = builder.create();
}
return gson;
}
}
L'heure de vérité !
PUT
Bundle args = new Bundle();
String personJsonString = Utils.getGsonParser().toJson(person);
args.putString(PERSON_KEY, personJsonString);
GET
Bundle args = getArguments();
String personJsonString = args.getString(PERSON_KEY);
Person person= Utils.getGsonParser().fromJson(personJsonString, Person.class);
Actuellement, je ne connais pas les limites de performance de cette approche. Mais elle fonctionne très bien