Android Jsoup парсинг

150
20 декабря 2017, 21:43

Подскажите в чем ошибка? вылетает приложение

public class ParceNews extends AppCompatActivity {
    private ListView list_view;
    private TextView textView;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_parce_news);
        list_view = (ListView) findViewById(R.id.list_view);
        textView = (TextView) findViewById(R.id.textView);
        ParceTitle parceTitle = new ParceTitle();
        parceTitle.execute();
        try {
            final HashMap<String,String> hashMap = parceTitle.get();
            final ArrayList<String>arrayList = new ArrayList<>();
            for(Map.Entry entry : hashMap.entrySet()){
                arrayList.add(entry.getKey().toString());
            }
            final ArrayAdapter<String> arrayAdapter = new ArrayAdapter<>(ParceNews.this
                    ,android.R.layout.simple_list_item_1, arrayList);
            list_view.setAdapter(arrayAdapter);
            list_view.setOnItemClickListener(new AdapterView.OnItemClickListener() {
                @Override
                public void onItemClick(AdapterView<?> adapterView, View view, int position, long l) {
                    ParceText parceText = new ParceText();
                    parceText.execute(hashMap.get(arrayList.get(position)));
                    try {
                        list_view.setVisibility(View.GONE);
                        textView.setText(parceText.get());
                    } catch (InterruptedException | ExecutionException e) {
                        e.printStackTrace();
                    }
                }
            });
        } catch (InterruptedException | ExecutionException e) {
            e.printStackTrace();
        }
    }
    @Override
    public void onBackPressed() {
        list_view.setVisibility(View.VISIBLE);
        textView.setVisibility(View.GONE);
    }
    @SuppressLint("StaticFieldLeak")
    class ParceText extends AsyncTask<String, Void, String>{
        @Override
        protected String doInBackground(String... params) {
            String str = " ";
            try {
                Document document = Jsoup.connect(params[0]).get();
                Element element = document.select(".itemFullText").first();
                str = element.text();
            } catch (IOException e) {
                e.printStackTrace();
            }
            return str;
        }
    }
    @SuppressLint("StaticFieldLeak")
    class ParceTitle extends AsyncTask<Void, Void, HashMap<String, String>>{
        @Override
        protected HashMap<String, String> doInBackground(Void... voids) {
            HashMap<String,String> hashMap = new HashMap<>();
            try {
                Document document = Jsoup.connect("http://www.ndu.edu.ua/index.php/ua/vsi-novuni").get();
                Elements elements = document.select(".catItemTitle");
                for(Element element:elements){
                    Element element1 = element.select("a[href]").first();
                    hashMap.put(element.text(), element1.attr("abs:href"));
                }
            } catch (IOException e) {
                e.printStackTrace();
            }
            return null;
        }
    }
}
Answer 1

Вы в своей задаче, распарсив данные в Map не возвращаете их, а возвращаете null - оттого и получаете NPE

READ ALSO
сеттер геттер java Android Studio

сеттер геттер java Android Studio

Здравствуйте я дошёл до геттеров сеттеров и не могу закрыть доступ к полям классаДело в том, что знакомый сказал, что не верно класс персон...

154
Получения значения по ключу

Получения значения по ключу

В общем стоит довольно таки тривиальная задача, получения значения по ключу из HashMap или TreeMap (до сих пор не знаю для этой задачи лучше использовать...

175
Перебор ключей JSONObject (библиотека org.json)

Перебор ключей JSONObject (библиотека org.json)

На сервер приходит jsonobject , с неизвестными ключами например:{"perviy":"1","2":"vtoroy","223dsds0":"adfad"} как вытянуть все ключи и соответствующие значения?

270
Что значит ClassFanOutComplexityCheck

Что значит ClassFanOutComplexityCheck

Не могу понять, что значит ошибка чекстайла?

172