【问题标题】:Android AsyncTask .add code says cabbıt resolveAndroid AsyncTask .add 代码说 cabbıt resolve
【发布时间】:2016-08-25 12:52:52
【问题描述】:

我找不到任何异步任务的代码或资源,所以我把它放在这里。对此感到抱歉,但我该如何更正此代码?

    package com.example.tarko.deneme;

    import android.os.AsyncTask;
    import android.os.Bundle;

    import org.jsoup.Jsoup;
    import org.jsoup.select.Elements;
    import org.w3c.dom.Document;

    import java.io.IOException;
    import java.util.Calendar;

    /**
    * Created by tarko on 25.08.2016.
    */
    public abstract class AsyncTask2 extends AsyncTask<Void, Void, Void>               {


    @Override
    protected void onPreExecute(){
    super.onPreExecute();
    }
    @Override
    protected Void doInBackground(String... params){
    try{


      Bundle lastPosts = null;
      lastPosts.clear();
      org.jsoup.nodes.Document doc = Jsoup.connect(params[0]).get();

      //Ana Elementler
      Elements div_content_left = doc. select("div[id=conent-left]");
      Elements div_home_article = div_content_left.select("div[class=home-article");

      //Ara Başlıklar
      Elements div_article_title = div_home_article.select("div[class=article-title]");
      Elements div_article_content = div_home_article.select("div[class=article-content");
      Elements div_article_short = div_home_article.select("div[class=article-short]");

      //Son Elementler
      Elements images = div_article_content.select("img");
      Elements p = div_article_short.select("p");
      Elements h1 = div_article_title.select("h1");
      Elements a = h1.select("a");

      for (int i=0; i<a.size(); i++){
      lastPosts.add(new Post(a.get(i).text(),a.get(i).attr("href"),p.get(i).text()));
          resimAdresleri.add(images.get(i).attr("src"));
  }


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

    @Override
protected void onPostExecute(Void result){
    super.onPostExecute(result);
}
@Override
protected void onProgressUpdate(Void... values){
    super.onProgressUpdate(values);
}
@Override
protected void onCancelled(Void result){
    super.onCancelled(result);
}
}}

它在 .add 样本上出错,它说无法解决方法。代码变了吗?

【问题讨论】:

  • 我认为catch 声明后缺少一个“}”。

标签: jsoup parse-error


【解决方案1】:

它出错是因为Bundle 没有名为add() 的方法。相反,它有Bundle.putString()Bundle.putInt() 等。

查看documentation 了解最适合您的方法。

另外,即使你让它编译,它也会因为这行代码在运行时失败:

Bundle lastPosts = null;
lastPosts.clear();

这将产生一个NullPointerException,请确保您使用以下命令初始化您的Bundle

Bundle lastPosts = new Bundle();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-10-28
    • 2020-12-21
    • 2020-09-09
    • 2021-09-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-25
    相关资源
    最近更新 更多