Scusa se insisto ma continuo a non capire bene il senso (e gli obiettivi) di quello che stai facendo. Il JSONArray di Android ha un costruttore che riceve un String, che è quello che stai usando tu passando result che è un String.
Ma questa stringa deve contenere la codifica JSON per un array e da quanto mi è parso di capire non è così. O sbaglio?