Я создаю приложение для Android и хочу, чтобы оно сериализовало некоторые объекты Java в вывод String JSON.Я использую библиотеку Джексона.
Я создал метод, который принимает объект в качестве входных данных и выводит String JSON.Когда этот код выполняется на моем компьютере, я правильно получаю вывод JSON, а это означает, что ключи вывода поддерживают порядок, в котором они объявлены в моем объекте.Когда код работает на телефоне Android с помощью Android Studio, ключи сортируются в алфавитном порядке.Это нежелательно в моем случае.
Вот код:
public String toJSON(Object obj){
ObjectMapper mapper = new ObjectMapper();
mapper.setVisibility(PropertyAccessor.FIELD, JsonAutoDetect.Visibility.ANY);
try {
// Convert object to JSON string
String jsonInString = mapper.writeValueAsString(obj);
return jsonInString;
} catch (JsonGenerationException e) {
e.printStackTrace();
return "Error";
} catch (JsonMappingException e) {
e.printStackTrace();
return "Error";
} catch (IOException e) {
e.printStackTrace();
return "Error";
}
}