Android开发中jsoup解析网页的问题,高手请进,急急急!!!
很简单的功能,就是用jsoup解析指定url的网页,然后将网页源码显示在手机上以下是源码
主Activity
public class TestJsoupActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
try {
Document doc = Jsoup.connect("http://www.baidu.com").get();
TextView textView=(TextView) this.findViewById(R.id.text);
textView.setText(doc.html());
} catch (IOException e) {
e.printStackTrace();
}
}
}
布局文件main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:id="@+id/text"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello"
/>
</LinearLayout>
清单文件
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.yuchao.TestJsoup"
android:versionCode="1"
android:versionName="1.0">
<uses-sdk android:minSdkVersion="8" />
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".TestJsoupActivity"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
我用的是jsoup最新版,官网下的,Android sdk2.2,测试之后老是报
java.lang.noClassDefFoundError: org.jsoup.Jsoup错误,
但是我的包明明导入进去了,各位大大有什么解决方案吗?
--------------------编程问答-------------------- 没用过,may be你的jar包放在中文文件夹下了? --------------------编程问答-------------------- 我也是啊,有人解决么 --------------------编程问答-------------------- 。。。将网页显示在手机上。。自己用httpConnection连接获取吧。。。jsoup是国人的开源项目。。你可以写邮件问下作者。 --------------------编程问答-------------------- --------------------编程问答-------------------- jar必须放在libs下 --------------------编程问答-------------------- ADT在升级到版本20之后无法加载这个jar包。解决方式如下:将Jsoup.jar包(即在properties里面的java build path将其remove掉)删除掉,然后在工程根目录下建立libs文件夹,注意一定是libs文件夹,而非lib,将Jsoup.jar包复制文件夹里面,然后clean一下工程,refresh一下工程,ok问题解决。 --------------------编程问答-------------------- --------------------编程问答-------------------- 为什么我的放在libs下还是报错呢?包的是[2013-08-23 14:48:40 - Dex Loader] Unable to execute dex: Multiple dex files define Lorg/jsoup/Connection$Base;
Conversion to Dalvik format failed: Unable to execute dex: Multiple dex files define Lorg/jsoup/Connection$Base;
--------------------编程问答-------------------- 添加jar 包
补充:移动开发 , Android