Подтвердить что ты не робот

Намерение для Android

Мне было интересно, в чем смысл загрузки URL-адресов? В браузере он загрузит материал с небольшим значком уведомления. Мне было интересно, могу ли я использовать это намерение (и что это такое).

4b9b3361

Ответ 1

Приложения могут загружать файлы с помощью диспетчера загрузки так же, как браузер и gmail. Это доступно, начиная с Gingerbread.

Вашему приложению требуется разрешение INTERNET для запуска загрузки. Чтобы сохранить файл в каталоге загрузки по умолчанию, ему также потребуется разрешение WRITE_EXTERNAL_STORAGE.

Здесь вы можете загрузить URI:

DownloadManager.Request r = new DownloadManager.Request(uri);

// This put the download in the same Download dir the browser uses
r.setDestinationInExternalPublicDir(Environment.DIRECTORY_DOWNLOADS, "fileName");

// When downloading music and videos they will be listed in the player
// (Seems to be available since Honeycomb only)
r.allowScanningByMediaScanner();

// Notify user when download is completed
// (Seems to be available since Honeycomb only)
r.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED);

// Start download
DownloadManager dm = (DownloadManager) getSystemService(DOWNLOAD_SERVICE);
dm.enqueue(r);

Существует множество других параметров для настройки уведомления, запроса состояния загрузки и настройки места загрузки.

Это сообщение в блоге показывает, как вы могли бы использовать диспетчер загрузки в предыдущих версиях Android через скрытые API.

Ответ 2

В то время как я не верю, что в браузере есть загрузочный Intent, вы, вероятно, можете использовать обычный ACTION_VIEW Intent и разрешить браузеру загружать или просматривать URL-адрес на основе типа контента.

Итак, из кода запуска new Intent(Intent.ACTION_VIEW, Uri.parse(url))

и надеемся, что это приведет к загрузке в браузере.

Ответ 3

Что вы пытаетесь сделать? Если ваше приложение хочет загрузить файл, вы можете использовать код UrlConnection. Если вы хотите загрузить пакет, ACTION_PACKAGE_INSTALL должен делать то, что вы хотите.

Ответ 4

Посмотрите здесь на все Android-намерения.