मैं jsoup पुस्तकालय jsoup-1.7.1.jar कोर डाउनलोड किया है और परियोजना का उपयोग कर अपने प्रोजेक्ट के लिए आयातित -> गुण> पथ जावा बिल्ड -> जोड़ें बाहरी जार और मैंने पुस्तकालय फ़ाइल को मेरे libs फ़ोल्डर में चिपकाया। हालांकि मेरी परियोजना में जेएसओपी लाइब्रेरी आयात करने के बारे में कुछ समस्या है। जब मैं अपना ऐप चलाता हूं, लॉन्च करने पर मुझे यह त्रुटि मिलती है।jsoup साथ पार्सिंग त्रुटि फेंकता (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
खोज और पूछ के बाद मुझे पता चला कि ग्रहण jsoup.jar देखता है, लेकिन अनुप्रयोग चलाने के लिए के लिए APK फ़ाइल में पैकेज करने में असमर्थ। मैंने Shift + Alt + O दबाकर आयात को व्यवस्थित करने का प्रयास किया और मुझे एक ही त्रुटि मिल जाएगी। इस बिंदु पर, मुझे इस बारे में अनिश्चितता है कि क्या गलत है और इसे ठीक करने के बारे में कोई जानकारी नहीं है। मुझे उम्मीद है कि कोई मुझे समाधान की तरफ ले जाएगा। अपना समय प्रशंसा करो! आप एक
android.os.NetworkOnMainThreadException
जो आपके जार ठीक से है या नहीं काम कर के साथ कोई संबंध नहीं है है
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;
}
}
बिल्कुल सही। @Questions, आप इसके लिए मेरे डेटालोडर का भी उपयोग कर सकते हैं: https://github.com/christopherperry/dataloader (लापरवाह प्लग) –
मैंने अपना प्रश्न अपडेट किया और अपना स्रोत कोड जोड़ दिया। क्या आप मुझे दिखा सकते हैं कि आप यहां AsyncTask का उपयोग कैसे करेंगे? धन्यवाद! – Questions
@ प्रश्नोत्तर मैंने एक उदाहरण के साथ अपना जवाब अपडेट किया। –