2013-09-19 1 views
0

Я прохожу через Android development tutorial. Я не очень разбираюсь в Java, но считаю, что это хорошее упражнение. В любом случае, здесь в настоящее время код, который должен принести мне данные с веб-сайта на своем Android устройстве (довольно много downloadUrl делает все - так мне помочь в этом):Java/Android: только половина веб-сайта загружена

private class DownloadXmlTask extends AsyncTask<String, Void, String> { 
    @Override 
    protected String doInBackground(String... urls) { 
     try { 
      return downloadUrl(urls[0]); 
     } catch (IOException e) { 
      return getResources().getString(R.string.connection_error); 
     } 
    } 

    @Override 
    protected void onPostExecute(String result) { 
     try{ 
      doEt(result); 
     } catch (Exception e){ 
      System.out.println(e); 
     } 
    } 

    private String downloadUrl(String urlString) throws IOException { 
     java.net.URL url = new URL(urlString); 
     HttpURLConnection conn = (HttpURLConnection) url.openConnection(); 
     conn.setReadTimeout(100000); 
     conn.setConnectTimeout(150000); 
     conn.setRequestMethod("GET"); 
     conn.setDoInput(true); 
     // Starts the query 
     conn.connect(); 
     BufferedReader r = new BufferedReader(new InputStreamReader(conn.getInputStream())); 
     StringBuilder total = new StringBuilder(); 
     String line; 
     while ((line = r.readLine()) != null) { 
      total.append(line); 
     } 
     //conn.disconnect(); 
     return total.toString(); 
    } 
} 

В DOET() Я просто печать из строки, которую я приобрел. Однако только половина веб-сайта находится в возвращаемой переменной String. Любая помощь приветствуется, спасибо!

ответ

0

Возможные проблемы:

  1. второй половины сайта генерируется с помощью JavaScript, который HttpConnection не будет выполнять.
  2. попытайтесь попробовать распечатать одну строку первой

    while ((line = r.readLine()) != null) { 
    
        total.append(line); 
    
        Log.i("test",line); 
    

    }

+0

Хм .. Это распечатать каждую строку, так что сайт действительно получает неправдоподобным правильно. И проблема, оказывается, IDE, спасибо в любом случае :) – Oskar

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