2016-07-12 3 views
0

Мне нужно загрузить и загрузить 3 поля, содержащие широту, долготу и последний раз вид из mysql-php, отфильтрованных по электронной почте. Какой самый быстрый, а также меньший способ использования памяти для Android?Самый быстрый способ загрузить или загрузить lat long на сервер

Пробужденный Async в фоновом режиме, но требуется около 10 секунд для возврата.

общественного класса LocationWebService расширяет AsyncTask {

public LocationWebService() { 
    // TODO Auto-generated constructor stub 
} 

@Override 
protected Boolean doInBackground(String... arg0) { 
    String lat = arg0[0]; 
    String lng = arg0[1]; 
    String url = arg0[2]; 
    String email = arg0[3]; 
    Log.e("LAT",arg0[0]); 
    Log.e("LNG",arg0[1]); 
    Log.e("URL",arg0[2]); 
    Log.e("EMAIL",arg0[3]); 
    InputStream is = null; 
    List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(); 
    nameValuePairs.add(new BasicNameValuePair("latitude", lat)); 
    nameValuePairs.add(new BasicNameValuePair("longitude", lng)); 
    nameValuePairs.add(new BasicNameValuePair("email", email)); 
    String result = null; 

    try{ 
     HttpClient httpClient = new DefaultHttpClient(); 
     HttpPost httpPost = new HttpPost(url); 
     httpPost.setEntity(new UrlEncodedFormEntity(nameValuePairs)); 
     HttpResponse response = httpClient.execute(httpPost); 
     HttpEntity entity = response.getEntity(); 
     is = entity.getContent(); 

     BufferedReader reader = new BufferedReader(new InputStreamReader(is, "UTF-8"), 8); 
     StringBuilder sb = new StringBuilder(); 

     String line = null; 
     while ((line = reader.readLine()) != null) 
     { 
      sb.append(line + "\n"); 
     } 
     result = sb.toString(); 
    } catch (ClientProtocolException e) { 
     e.printStackTrace(); 
    } catch (UnsupportedEncodingException e) { 
     e.printStackTrace(); 
    } catch (IOException e) { 
     e.printStackTrace(); 
    } 
    return null; 
} 

}

+0

, пожалуйста, добавьте, что вы пробовали? –

+1

dont user HtttpClient. его устарело. попробуйте библиотеки Retrofit или Volley. погугли это –

ответ

0

Я не думаю, что ваш код выше будет стоить так долго, как 10 секунд, если что-то не так с вашей сети или на сервере.

Смежные вопросы