Tôi tải về các thư viện jsoup jsoup-1.7.1.jar lõi và nhập nó vào dự án của tôi bằng cách sử dụng Dự án -> Properties-> Java Build Path -> Add Chum bên ngoài và tôi đã dán tập tin thư viện vào thư mục libs của mình. Tuy nhiên có vẻ như có một số vấn đề về việc nhập thư viện Jsoup vào dự án của tôi. Khi tôi chạy ứng dụng của mình, khi khởi chạy, tôi nhận được lỗi này.Phân tích với jsoup ném lỗi (NetworkOnMainThreadException)
12-26 22:59:24.133: E/AndroidRuntime(6710): FATAL EXCEPTION: main
12-26 22:59:24.133: E/AndroidRuntime(6710): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.jsouptest/com.example.jsouptest.MainActivity}: android.os.NetworkOnMainThreadException
Sau khi tìm kiếm và hỏi tôi phát hiện thấy nhật thực thấy jsoup.jar, nhưng không thể chuyển nó vào tệp APK để chạy ứng dụng. Tôi đã cố gắng tổ chức Nhập bằng cách nhấn Shift + Alt + O và tôi sẽ gặp lỗi tương tự. Tại thời điểm này, tôi không chắc chắn về những gì là sai và không có ý tưởng làm thế nào để sửa chữa nó. Tôi chỉ hy vọng một người nào đó sẽ dẫn tôi đến giải pháp. Đánh giá cao thời gian của bạn!
Đây là mã của tôi:
package com.example.jsouptest;
import java.io.IOException;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Document doc;
try {
doc = Jsoup.connect("http://google.com/").get();
String title = doc.title();
System.out.print(title);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
}
Chính xác. @Questions, bạn có thể sử dụng DataLoader của tôi cho điều này là tốt: https://github.com/christopherperry/dataloader (plug shameless) –
Tôi đã cập nhật câu hỏi của mình và thêm mã nguồn của mình. Bạn có thể chỉ cho tôi cách bạn sử dụng AsyncTask ở đây không? Cảm ơn! – Questions
@Questions Tôi đã cập nhật câu trả lời của mình bằng một ví dụ. –