我是一位相對較新的Android程序員,我在想如何從4.0.3中的互聯網中獲取文本。我一直在尋找能夠給我一個Network on Main異常的代碼:http://developer.android.com/reference/android/os/NetworkOnMainThreadException.html,並想知道是否有人可以提供一些示例代碼來解決這個問題,以供參考,我得到了我在此嘗試使用的代碼:http://android-er.blogspot.com/2011/04/read-text-file-from-internet-using-java.html。非常感謝。在Android 4.0.3中,您如何從互聯網中讀取文本文件
0
A
回答
3
在Honeycomb和Ice Cream Sandwich的(即Android 3.0版以上),您無法連接到互聯網在主線程(onCreate()
,onPause()
,onResume()
等),你必須,而不是開始一個新的線程。之所以發生變化,是因爲網絡操作可能會讓應用程序等待很長時間,如果您在主線程中運行它們,整個應用程序將變得無法響應。如果您嘗試從主線程連接,則Android會拋出NetworkOnMainThreadException
。
要繞過此操作,您可以從新線程運行網絡代碼,並使用runOnUiThread()
在主線程中執行某些操作,例如更新用戶界面。一般情況下,你可以這樣做:
class MyActivity extends Activity {
public onCreate(Bundle savedInstanceState) {
super.onCreate();
// Create thread
Thread networkThread = new Thread() {
@Override
public void run() {
try {
// this is where your networking code goes
// I'm declaring the variable final to be accessible from runOnUiThread
final String result = someFunctionThatUsesNetwork();
runOnUiThread(new Runnable() {
@Override
public void run() {
// this is where you can update your interface with your results
TextView myLabel = (TextView) findViewById(R.id.myLabel);
myLabel.setText(result);
}
}
} catch (IOException e) {
Log.e("App", "IOException thrown", e);
}
}
}
}
}
+0
我完全相同的嘗試,但沒有任何成功。我的機器是Working Behind Proxy,目標版本是4.0。獲取HTML中的響應,其中顯示「CACHE ACCESS DENIED」,當它用作解析它的輸入時拋出XMLPullParserException ....我有2.6.5版本的KSOAP。我想知道它是否可能,也許有些建議會非常有幫助。似乎許多問題(如我的)在SO中沒有答案。 – iDroid 2012-06-29 13:10:26
0
您需要完成一個HTTP請求。網上有很多例子。嘗試here開始。
相關問題
- 1. 如何從互聯網資源中讀取文本文件?
- 2. java/android:通過認證從互聯網讀取文本文件
- 3. 如何使用Java從互聯網上讀取文本文件?
- 4. 在Android中從互聯網讀取XML
- 5. 從互聯網上讀取文件?
- 6. Java:從目錄中的文本文件中讀取,從互聯網上
- 7. 從互聯網上獲取文本
- 8. 通過互聯網讀取/寫入文本文件通過互聯網文件文件
- 9. Android:從互聯網下載文件時關閉互聯網時如何處理?
- 10. 如何從web中讀取android中的文本文件?
- 11. 地鐵應用程序:C#,從互聯網上讀取文本文件
- 12. 通過互聯網在python上閱讀文本文件
- 13. Android - 如何從網址讀取文本文件?
- 14. 在android中讀取文本文件
- 15. 在android中讀取文本文件
- 16. 我如何從android txt文件中讀取特定文本
- 17. 如何從Android中的SD卡讀取文本文件?
- 18. android從文件中讀取
- 19. 在Android java中從互聯網獲取txt文件的一部分
- 20. 如何從文本文件中讀取我在C中創建
- 21. 如何在java中從網站讀取.dat文件中的文本?
- 22. 從文本文件中隨機讀取
- 23. 如何從XAP文本文件中讀取文本?
- 24. 從條件中讀取文本文件
- 25. 從互聯網獲取最新文檔
- 26. 如何從c中的文本文件讀取多行文件#
- 27. 如何在android中讀取csv文件?
- 28. 如何在Android中讀取.crt文件
- 29. 如何在android中讀取txt文件
- 30. 如何在android中讀取epub文件?
你添加Internet權限('<使用許可權的android:name = 「android.permission.INTERNET對」/>')到你的'AndroidManifest.xml' – Leandros 2012-01-29 04:20:10