我是一位相對較新的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. 從互聯網上讀取文件?
- 5. Java:從目錄中的文本文件中讀取,從互聯網上
- 6. 通過互聯網讀取/寫入文本文件通過互聯網文件文件
- 7. 如何從web中讀取android中的文本文件?
- 8. 通過互聯網在python上閱讀文本文件
- 9. Android - 如何從網址讀取文本文件?
- 10. 在android中讀取文本文件
- 11. 如何從Android中的SD卡讀取文本文件?
- 12. 如何從文本文件中讀取我在C中創建
- 13. 從文本文件中隨機讀取
- 14. 如何從XAP文本文件中讀取文本?
- 15. 如何在android中讀取epub文件?
- 16. 如何在android中讀取pdf文件?
- 17. 如何在android中讀取csv文件?
- 18. 如何在android中讀取txt文件
- 19. 如何在Android中寫入和讀取文本文件?
- 20. 如何從c中的文本文件讀取多行文件#
- 21. Android從結尾讀取文本文件
- 22. android - 從文本文件逐行讀取
- 23. C#從讀取文本文件中讀取二進制文件
- 24. 如何通過互聯網更新文本文件? VB.Net
- 25. 如何從互聯網下載文件並保存在iPhone上的「文檔」中?
- 26. 從互聯網上讀取數據
- 27. 從資源中讀取文本文件
- 28. 從文本文件中讀取路徑?
- 29. 從文本文件中讀取數據
- 30. 從文本文件中讀取列表
你添加Internet權限('<使用許可權的android:name = 「android.permission.INTERNET對」/>')到你的'AndroidManifest.xml' – Leandros 2012-01-29 04:20:10