→ laiair:謝謝大大 可以了~ 原來是這小細節 以後會更注意的@@ 11/10 21:54
不好意思
小弟想要再追問
我想要連結網路抓取資料使用
範例使用的是這篇
http://ascc.sinica.edu.tw/iascc/articals.php?_section=2.4&_op=?articalID:4062
透過 yahoo api 取得某檔股票資訊
我把這段程式放在按鈕事件裡面
public void btnOn(View v) throws IOException {
String urlConnect =
"http://finance.yahoo.com/d/quotes.csv?s=2330.TW&f=snd1l1c6";
//設定 url字串,內容是取值的網址
URL url = new URL(urlConnect);
HttpURLConnection conn = (HttpURLConnection)url.openConnection();
//使用 HttpURLConnection 方法連接
if (conn.getResponseCode() == HttpURLConnection.HTTP_OK) {
Toast.makeText(this, "成功!", Toast.LENGTH_SHORT).show();
}else{Toast.makeText(this, "失敗", Toast.LENGTH_SHORT).show();}
//判斷是否連接, OK 回傳成功,反之 回傳失敗。
/*
InputStreamReader isr = new InputStreamReader(conn.getInputStream());
BufferedReader in = new BufferedReader(isr);
String line = in.readLine();
tt.setText(line);
//這邊是取值,然後丟給文字欄位輸出,不過還沒做到這邊。
*/
}
原本是沒有藍色這一段 throws IOException
不過系統提示之後就補上去了
也有在 Manifest 裡面
補上這兩句開權限的
<uses-permission android:name="
android.permission.INTERNET"></uses-permission>
<uses-permission android:name="
android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
可是也是不能執行
並不會出現 "成功"、"失敗" 的字樣
而是直接就程式關閉了
不知道是哪邊沒有注意到呢
懇請前輩賜教了
萬事拜託~
※ 編輯: laiair 來自: 60.244.55.146 (11/11 01:14)
※ 編輯: laiair 來自: 60.244.55.146 (11/11 01:16)
→ kewang:請看log...... 11/11 10:58
※ 編輯: laiair 來自: 60.244.55.146 (11/11 12:48)
→ laiair:@@ 已解決了 似乎是版本問題 11/11 12:48
→ lovelycateye:網路存取不要放在UI thread做 11/12 11:25
→ chronoer:android在某版本(忘了)之後 網路存取不能在main thread中 11/12 15:32
→ chronoer:用new thread/asynctask來處理網路存取會比較適合 :) 11/12 15:34
→ Killercat:因為Uri.parse能parse的不止http 還有很多其他東西 11/13 11:52
→ Killercat:甚至連content provider都可以用它parse出來 11/13 11:52