ciao!
io uso sempre volley su android per questo tipo di richieste.
okhttp l'ho usata varie volte, me la ricordo un pò più semplice da usare.
direi di partire da questa.
per il banding json, sempre lato android, puoi usare gson.
in un progetto ho usato il packaje org.json, in quanto doveo costruire json abbastanza complessi.
vedo tu se le strade che ti ho indicato possono aiutarti!