Я работаю над приложением, рабочий процесс которого выглядит следующим образом:
1.разбор домашней страницы (с помощью HttpURLConnection, connect (), делать вещи, отключать (), использовать данные),
2.после того, как я нажал на ссылки, которые я сделал, проанализировал статью или загрузил файл на основе ссылки.
Первый шаг работает отлично и 2-й тоже в случае статьи, но когда я пытаюсь загрузить файл с определенного URL исохраните его на SD-карту, я получил fileNotFoundException в этой строке:
InputStream inputStream = urlConnection.getInputStream();
Мое руководство по выполнению этого (загрузка файла) было здесь объяснено кодом http://goo.gl/GTBOP, и я установил разрешения в манифесте, как требуется дляэто действие, плюс перед любой операцией загрузки, я проверил состояние MEDIA_MOUNTED & MEDIA_MOUNTED_READ_ONLY, и, похоже, это хорошо подходит.
Итак ... Я много читал об этой проблеме в stackOverflow и других местах, и я пробовал разные предложения, такие как добавлениеэто:
urlConnection.setRequestProperty("User-Agent","Mozilla/5.0 ( compatible ) ");
urlConnection.setRequestProperty("Accept","*/*");
или
System.setProperty("http.keepAlive", "false");
, но безуспешно.Я все еще застрял с fileNotFoundException.Я пытался поймать код ответа с веб-страницы, и он говорит 404 ..?!
Странно, что если я жестко закодирую ссылку на файл для скачивания с любого другого сайта, он скачивает файл без каких-либо проблем.Поэтому, чтобы прояснить ситуацию, я щелкнул ссылку на переменную fileurl, но на следующем шаге я просто говорю fileurl = "somesite / somefile.ext", все идет гладко. Из веб-браузера я могу загрузить любой файл, который вызывает проблемы в моем приложении, поэтому яЯ запутался, где проблема ..
Любое предложение, пожалуйста ..?10q