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);
Другие вопросы по тегам