Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.78
Xpert1993
0 / 0 / 1
Регистрация: 16.06.2012
Сообщений: 41
#1

AsyncTask и Jsoup - Программирование Android

23.07.2013, 13:31. Просмотров 1116. Ответов 2
Метки нет (Все метки)

Не работает вот такой код:
Кликните здесь для просмотра всего текста
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
package com.example.projecta;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import android.app.Activity;
import android.os.AsyncTask;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.TextView;
 
public class MainActivity extends Activity {
 
  MyTask mt;
  TextView tvInfo;
 
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    tvInfo = (TextView) findViewById(R.id.tvInfo);
 
  }
 
  public void onclick(View v) {
    mt = new MyTask();
    mt.execute();
  }
 
  class MyTask extends AsyncTask<String,Void, String> {
    @Override
    protected void onPreExecute() {
      super.onPreExecute();
      tvInfo.setText("Begin");
    }
 
    protected String doInBackground(String...links) {
        String html = "<html><head><title>Коты учатся кодить</title></head>,"
                + "<body><p>Коты умеют <del>ш</del>кодить.<br> Они великие программисты." +
                        "<p>А еще они умеют мяукать.</p>" +
                        "<a href='http://developer.alexanderklimov.ru'>Подробности здесь</a>" +
                        "</body></html>";
        Document doc = Jsoup.parse(html);//после этого крашится (узнал из log.d, здесь удалил из кода)
        return doc.html();//библиотека подключена...
    }
 
    @Override
    protected void onPostExecute(String result) {
      super.onPostExecute(result);
      tvInfo.setText(result);
   }    
  }
}

Код ошибки:
Кликните здесь для просмотра всего текста
07-23 09:30:19.143: D/dalvikvm(2222): GC_CONCURRENT freed 75K, 7% free 2740K/2936K, paused 73ms+80ms, total 306ms
07-23 09:30:19.233: D/gralloc_goldfish(2222): Emulator without GPU emulation detected.
07-23 09:30:22.633: I/dalvikvm(2222): Could not find method org.jsoup.Jsoup.parse, referenced from method com.example.projecta.MainActivity$MyTask.doInBackground
07-23 09:30:22.633: W/dalvikvm(2222): VFY: unable to resolve static method 29: Lorg/jsoup/Jsoup;.parse (Ljava/lang/StringLorg/jsoup/nodes/Document;
07-23 09:30:22.633: D/dalvikvm(2222): VFY: replacing opcode 0x71 at 0x0002
07-23 09:30:22.663: W/dalvikvm(2222): threadid=11: thread exiting with uncaught exception (group=0x40a71930)
07-23 09:30:22.673: E/AndroidRuntime(2222): FATAL EXCEPTION: AsyncTask #1
07-23 09:30:22.673: E/AndroidRuntime(2222): java.lang.RuntimeException: An error occured while executing doInBackground()
07-23 09:30:22.673: E/AndroidRuntime(2222): at android.os.AsyncTask$3.done(AsyncTask.java:299)
07-23 09:30:22.673: E/AndroidRuntime(2222): at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:352)
07-23 09:30:22.673: E/AndroidRuntime(2222): at java.util.concurrent.FutureTask.setException(FutureTask.java:219)
07-23 09:30:22.673: E/AndroidRuntime(2222): at java.util.concurrent.FutureTask.run(FutureTask.java:239)
07-23 09:30:22.673: E/AndroidRuntime(2222): at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:230)
07-23 09:30:22.673: E/AndroidRuntime(2222): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
07-23 09:30:22.673: E/AndroidRuntime(2222): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
07-23 09:30:22.673: E/AndroidRuntime(2222): at java.lang.Thread.run(Thread.java:856)
07-23 09:30:22.673: E/AndroidRuntime(2222): Caused by: java.lang.NoClassDefFoundError: org.jsoup.Jsoup
07-23 09:30:22.673: E/AndroidRuntime(2222): at com.example.projecta.MainActivity$MyTask.doInBackground(MainActivity.java:49)
07-23 09:30:22.673: E/AndroidRuntime(2222): at com.example.projecta.MainActivity$MyTask.doInBackground(MainActivity.java:1)
07-23 09:30:22.673: E/AndroidRuntime(2222): at android.os.AsyncTask$2.call(AsyncTask.java:287)
07-23 09:30:22.673: E/AndroidRuntime(2222): at java.util.concurrent.FutureTask.run(FutureTask.java:234)
07-23 09:30:22.673: E/AndroidRuntime(2222): ... 4 more
07-23 09:30:25.553: I/Choreographer(2222): Skipped 39 frames! The application may be doing too much work on its main thread.

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.07.2013, 13:31
Здравствуйте! Я подобрал для вас темы с ответами на вопрос AsyncTask и Jsoup (Программирование Android):

AsyncTask - Программирование Android
Привет. Знаю, что в AsyncTask doInBackground() обращатся к компонентам UI нельзя. Когда я пытаюсь обновить вывод (в EditText) в...

AsyncTask - Программирование Android
Использую AsyncTasc class MyT extends AsyncTask&lt;Void, Void, Void&gt; { @Override protected Void doInBackground(Void......

AsyncTask и get() - Программирование Android
Создаю асинхронный процесс, где в onPreExecute() запускаю анимированный ProgressDialog. После выполнения задачи нужно выполнить действия....

AsyncTask - Программирование Android
Здравствуйте, при использовании двух одинаковых методов получается разный результат. AsyncTask в одном случае успешно передает данные в...

Отмена AsyncTask - Программирование Android
Привет. Есть такой код: @Override protected Void doInBackground(Void... params) { try { Interpret(Source.get()); }...

Не работает AsyncTask - Программирование Android
Не работает AsyncTask , вот код: private void registerInBackground() { new AsyncTask() { @Override ...

2
V0v1k
1159 / 983 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
23.07.2013, 14:07 #2
как либу подключали?
0
Xpert1993
0 / 0 / 1
Регистрация: 16.06.2012
Сообщений: 41
23.07.2013, 17:22  [ТС] #3
Копировал в libs, а затем add JARs в Build Path

Добавлено через 3 часа 11 минут
Решил:
зашел в Properties своего проекта и слева выбрал Java Build Path, Order And Export и поставил галки к тем библиотекам, которые нужно подключить.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.07.2013, 17:22
Привет! Вот еще темы с ответами:

Exception в AsyncTask - Программирование Android
Доброго всем. Проблема вот в чем: периодически во время выполнения одного из потоков в AsyncTask вылетает следующее: 04-21...

MainActivity AsyncTask - Программирование Android
Добрый вечер. Ребята тут небольшая проблема. Мне нужно Заполнить NavigatorDrawer (из базы). Почему когда я пытаюсь в...

Работа с AsyncTask - Программирование Android
Попробовал использовать AsyncTask и возник вопрос. У меня есть несколько ф-й, которые парсят текстовые файлы и заполняют таблицы БД. ...

AsyncTask и SQLite - Программирование Android
Здравствуйте! У меня в приложении есть БД SQLite, при нажатие на кнопку загрузки, приложение начинает в базу вносить записи. Структура...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru