2011-11-01 9 views
6

Estoy escribiendo una aplicación con un objeto modelo que expondrá una interfaz Restful a algunos servicios web. Me di cuenta de que en Android hay una java.net.URI y una clase android.net.URI. ¿Cuáles son los beneficios de usar uno frente al otro? ¿Alguien más se ha topado con esto y ha descubierto que uno funciona mejor que el otro?android.net vs java.net y las diferentes clases URI

En el siguiente código estoy analizando las partes individuales del URI en un objeto URI de java.net para poder llamar al httpGet(URI uri). Sin embargo, ¿habría algún beneficio de rendimiento o algún beneficio en el uso de las clases de android.net o simplemente llamando a httpGet (String url)?

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 
... 
} 

Respuesta

3

Eche un vistazo a this. Esto debería ayudar.

4

Sí, habrá beneficios de rendimiento. El equipo de Android no tiene que cumplir con las mismas restricciones de compatibilidad con versiones anteriores al codificar el paquete android.net que cuando implementan el paquete java.net. Por lo tanto, pueden hacer mejores optimizaciones.

Cuestiones relacionadas