2013-10-11 62 views
0

我想要獲得與ADT的Android谷歌pagerank與下面的代碼,但它給BufferedReader線上的NetworkOnMainThreadException。android java獲取谷歌pagerank

String url = "http://toolbarqueries.google.com/tbr?client=navclient-auto&hl=en&" 
     + "ch=6" + hash + "&ie=UTF-8&oe=UTF-8&features=Rank&q=info:" + domain; 
URLConnection conn = new URL(url).openConnection(); 

BufferedReader br = new BufferedReader(new InputStreamReader(conn.getInputStream())); 

String input; 
while ((input = br.readLine()) != null) { 
    result = input.substring(input.lastIndexOf(":") + 1); 
} 

順便說一下,我嘗試在PC java項目上的這個相同的代碼,它工作正常。 我也給了AndroidManifest.xml的以下權限。

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

回答

0

這是一個谷歌你自己的問題,在Android中你不應該讓在UI線程(該塊),持續時間長的工作運行。通過使用異步任務避免此異常

+0

yes無論如何發現它。我使用AsyncTask在線程內使用它。 –