2011-02-03 3 views
1

Я пишу приложение для Android, которое должно отвечать как можно быстрее. Приложение в основном захватывает контент с сайта (HTML, not XHTML) и анализирует часть его информации с помощью XPATH запросов. Я хочу, чтобы пользователь имел возможность удалять и отменять запрос, возвращаясь к предыдущему действию.Получение веб-страницы в прерывистом процессе на Android. Каков наиболее отзывчивый способ?

Прямо сейчас мой код выглядит следующим образом (я использую htmlcleaner баночку от http://htmlcleaner.sourceforge.net/ к convert html to xhtml):

//this is called from the doInBackground() method embedded in an ASyncTask 
    HtmlCleaner cleaner = new HtmlCleaner(); 
    CleanerProperties props = cleaner.getProperties(); 
    props.setAllowHtmlInsideAttributes(true); 
    props.setAllowMultiWordAttributes(true); 
    props.setRecognizeUnicodeChars(true); 
    props.setOmitComments(true); 
    try { 
     URL url = new URL("---my-url-goes-here---"); 
     URLConnection conn = url.openConnection(); 
     TagNode node = cleaner.clean(new InputStreamReader(conn.getInputStream())); 
     return node; 
    } catch (Exception e) { 
     failed = true; 
    } 

Я не уверен, если загрузка в моем коде на самом деле Отменяется, не говоря уже о том, что я хотел бы знать, как это сделать. Я на правильном пути или должен пойти на другой подход?

+0

Btw, мой код отлично работает, мне просто нужно иметь возможность прервать передачу данных, когда пользователь нажимает «назад». –

ответ

0

Я решил это, см. Это сообщение для получения дополнительной информации об использовании ASyncTask. Android stop download