Pracuję nad projektem Android z Apache Avro, ale zależy to od dwóch bibliotek Jacksona (core-asl.jar i mapper-asl.jar). Niestety te dwie biblioteki są zbyt duże dla aplikacji na Androida. Zastanawiam się, czy istnieje jakikolwiek sposób na uproszczenie kodu źródłowego Avro, czy mogę zastąpić Jacksona org.json bezpośrednio?Jak uprościć Apache Avro?
Odpowiedz
Jeśli Twój schemat jest w JSON Do konwersji formasu Json możemy użyć innej biblioteki. Użyłem biblioteki GSON do analizowania danych json
Avro używa formatu JSON zadeklarować struktury danych.
Avro schematy są zdefiniowane z JSON, który ułatwia jego realizację w językach z bibliotek JSON.
Więc można wypróbować to biblioteka insted Jackson
aplikacja Gradle zależności
compile 'com.google.code.gson:gson:2.7'
ciąg do obiektu konwersja
Gson gson = new Gson();
GsonParse gsonObj = gson.fromJson(jsonString);
obiektu do konwersji String
Gson gson = new Gson();
String puchaseDetails = gson.toJson(purchase);
Można to sprawdzić również here, jeśli używasz biblioteki do analizowania i przechowywania danych
Czy proponujesz zrobić to w bibliotece biblioteki Avro? Czy ktoś już to zrobił? – Devstr
Proponuję spróbować tego zamiast Jacksona –
co masz na myśli przez dwa duże dla android aplikacji? –
Tak, możesz zamienić Jackson na org.json –
@ cgomezmendez ogólnie mniejsze aplikacje na Androida są lepsze niż większe - są one szybsze do pobrania dla użytkowników. Również w moim przypadku jestem dość blisko limitu całkowitej liczby metod. – Devstr