Android — HTTP Get — ошибка явного завершения, не вызываемая. Что мне не хватает?

Я работаю над довольно простым приложением для Android, которое должно получить дату последнего изменения/обновления для веб-страницы, но, похоже, происходит сбой со следующим сообщением

05-27 10:50:15.581 2638-2652/android.process.acore E/DictionaryBackupAgent﹕ Не удалось прочитать курсор

05-27 10:50:20.658 2638-2647/android.process.acore E/StrictMode﹕ Ресурс был получен в подключенной трассировке стека, но никогда не освобождался. См. java.io.Closeable для получения информации о предотвращении утечек ресурсов.

java.lang.Throwable: явный метод завершения «закрыть» не вызывается

в dalvik.system.CloseGuard.open(CloseGuard.java:184)

на android.os.ParcelFileDescriptor.(ParcelFileDescriptor.java:180)

на android.os.ParcelFileDescriptor$1.createFromParcel(ParcelFileDescriptor.java:916)

на android.os.ParcelFileDescriptor$1.createFromParcel(ParcelFileDescriptor.java:906)

в android.app.IBackupAgent$Stub.onTransact(IBackupAgent.java:57)

в android.os.Binder.execTransact(Binder.java:446)

Часть моего кода ниже. Метод getLastModified(), кажется, вызывает этот сбой, не знаю почему.

private class Connection extends AsyncTask<String, Void, Integer> {
   @Override
    protected String doInBackground(String... urls) {
        String response = "This";
        URL url = null;
        try {
            url = new URL(urls[0]);
        } catch (MalformedURLException e) {
            e.printStackTrace();
        }

        HttpURLConnection con = null;
        try {
            con = (HttpURLConnection) url.openConnection();
            con.connect();
            long date = con.getLastModified();
            response = Long.toString(date);
        } catch (IOException e) {
            e.printStackTrace();
        }

        return response;
    }

    @Override
    protected void onPostExecute(String result) {
        mainText2.setText(result);
    }
}

@Override
public void onClick(View v) {
     Connection task = new Connection();
    task.execute(new String[] { "http://www.example.com/files/index.html" });
}

Что мне здесь не хватает? Любая помощь приветствуется!


person ayush    schedule 27.05.2015    source источник
comment
Я предполагаю, что вы не написали BackupAgent для своего приложения и включили StrictMode. Это правильно? Вы когда-нибудь находили решение этой проблемы?   -  person Bob Snyder    schedule 28.06.2015
comment
Как бы тривиально это ни звучало, я переписал код с одним из примеров со страниц разработчика в качестве основы, и это сработало. Никогда не понимал, что не так с этой версией.   -  person ayush    schedule 30.06.2015