Android: конвертировать Parcelable в JSON
Я работаю с библиотекой socket.io, которая отправляет сообщения на сервер socket.io. Сервер ожидает объекты JSON, массивы и т. Д. В моей первоначальной реализации использовались типы данных JSONOject и JSONArray. Однако я хотел бы перейти на использование классов, сгенерированных с помощью библиотеки Parceler. Классы, созданные с помощью аннотаций библиотеки, могут быть обернуты в Parcels. Это кажется очень удобным способом управления таким общением. Однако есть ли способ преобразовать класс Parceler или класс Parcel в строку JSON или JSONObject/Array?
Библиотека GSON поддерживает toJson
метод, и я знаю, что Retrofit делает немного магии с Parcels, JSON и GSON.
1 ответ
Я думаю, это поможет тебе,
Создайте класс с методом getters и setters, например
class A
{
int b;
void setb(int x){this.b = x;}
int getb(){return this.b}
}
чем вы можете создать JSON из объекта этого класса:
new Gson().toJson(a)
Или объект из JSON:
a = new Gson().fromJson(data, A.class);