2011-06-23 47 views
2

我想在我的Android應用程序中使用Jsoup 1.6.0,但由於某種原因它崩潰。我簡化了我的代碼:Jsoup錯誤與Android中的get()

import android.app.Activity; 
import android.os.Bundle; 
import android.widget.Toast; 

public class JsoupTestActivity extends Activity { 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 

     try { 
      Document d = Jsoup.connect("http://www.google.com").get(); 
     } catch (Exception e) { 
      Toast t = Toast.makeText(this, e.getMessage(), Toast.LENGTH_LONG); 
      t.show(); 
     } 
    } 
} 

但每當我我的手機上運行上述(在USB調試模式),或在模擬器上,我得到我的程序已意外崩潰的消息 - 的錯誤不是甚至被抓到。如果我有

Jsoup.connect("http://www.google.com"); 

更換try塊的內容的程序正常工作,因此它似乎像get()方法導致的問題......

僅供參考,以我的AndroidManifest.xml我確實包括

<uses-permission android:name="android.permission.INTERNET"></uses-permission> 

在正確的位置,R.layout.main是ADT在創建新項目時生成的默認佈局。我爲這個項目使用Android API級別7。我如何得到這個工作?

+0

的連接語法是確定的,但你在導入? 我無法看到Jsoup進口,這會有所幫助。 – InsaurraldeAP

回答

0

嘗試下載Jsoup的新版本,並粘貼jsoup-1.6.x.jar到您項目的庫文件夾中。

0

你不能從UI線程中做網絡操作,所以你應該採取JSoup.connect()出你的onCreate()和使用的AsyncTask