首页 > 解决方案 > 如何修复错误以在android中运行jsoup

问题描述

运行此代码时出现错误。当我运行此代码时,它被终止。在这一行中,我收到错误“Document doc=Jsoup.connect(” https://www.google.com “).get();” .

如何解决这个问题,我正在android studio中尝试。

package com.example.myapplication;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.view.View;
import android.widget.Button;

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;

import java.io.IOException;

public class MainActivity extends AppCompatActivity {
    Button btn1;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        btn1=(Button)findViewById(R.id.btn);
        btn1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                try {
                    Document doc= Jsoup.connect("https://www.google.com").get();

                } catch (IOException e) {
                    e.printStackTrace();

                }
            }


        });

    }

}

在 androidManifest 中提供访问 INTERNET

<uses-permission android:name="android.permission.INTERNET"></uses-permission>

当我按下按钮时在运行时出错:

Process: com.example.myapplication, PID: 8556
    java.lang.NoClassDefFoundError: Failed resolution of: Lorg/jsoup/Jsoup;
        at com.example.myapplication.MainActivity$1.getWebsite(MainActivity.java:32)
        at com.example.myapplication.MainActivity$1.onClick(MainActivity.java:27)
        at android.view.View.performClick(View.java:6597)
    enter code here

/Process: Sending signal. PID: 8556 SIG: 9
Application terminated.

标签: androidjsoup

解决方案


您能展示一下您的 build.gradle 文件如何吗?此外,查看堆栈跟踪,看起来您正在主线程上运行代码。寻找异步任务

这是一个例子:这个


推荐阅读