Piszę aplikację z obiektem modelu, który ujawni Restful interfejs do niektórych usług internetowych. Zauważyłem, że w Androidzie jest klasa java.net.URI i android.net.URI. Jakie są zalety korzystania z jednego w porównaniu do drugiego? Czy ktoś inny wpadł na to i stwierdził, że jeden działa lepiej od drugiego?android.net vs java.net i różne klasy URI
W poniższym kodzie parsuję poszczególne części identyfikatora URI do obiektu URI java.net, dzięki czemu mogę wtedy zadzwonić pod numer httpGet(URI uri)
. Jednak czy w przypadku korzystania z klas Android.net lub po prostu dzwoniąc do httpGet (String URL) nie byłoby żadnych korzyści z wydajności ani żadnych korzyści?
public class RestMethods {
private String protocol;
private String host;
private Integer port;
private URI uri;
public String restGet(String path) throws MalformedURLException, InterruptedException, ExecutionException{
StringBuilder builder = new StringBuilder();
try {
// Execute HTTP Post Request
HttpClient httpclient = new DefaultHttpClient();
HttpGet httpget = new HttpGet(uri);
HttpResponse response = httpclient.execute(httpget);
BufferedReader reader = new BufferedReader(new InputStreamReader(response.getEntity().getContent(), "UTF-8"));
for (String line = null; (line = reader.readLine()) != null;) {
builder.append(line).append("\n");
}
} catch (ClientProtocolException e) {
return "Client Protocol Exception Exception " + e.toString();
} catch (IOException e) {
return "IO Exception " + e.toString();
}
return builder.toString();
}
...
//Other rest methods, Getters, and setters down here
...
}