Nano Hash - криптовалюты, майнинг, программирование

Отображение файлов Android из URL GET

Я работаю над Android-версией приложения, которое я сделал для iOS. У меня есть несколько файлов (могут быть PDF, DOC, PNG и т. д.) в облачном хранилище, и я извлекаю их с помощью обработчика ASPX (например, http://www.myserver.com/GetFile?name=test.png).

Цель состоит в том, чтобы ТОЛЬКО ПОКАЗАТЬ, а не загружать файлы.

В iOS я использовал UIWebView, и он загружал и предварительно просматривал файл, пока ОС могла обрабатывать этот тип файла.

Каков наилучший подход для Android? Я пробовал следующее:

  • WebView и встраивание в документы Google (http://docs.google.com/gview?embedded=true&url=) - НЕ РАБОТАЕТ ДЛЯ PNG
  • Запуск нового действия с использованием myIntent.setDataAndType(myFileURI, myFileMIME); где myFileMIME = MimeTypeMap.getSingleton().getMimeTypeFromExtension(myFileTypeExtension). Для PNGS я получаю «Нет активности для типа изображения/png»
30.06.2015

Ответы:


1

Я думаю, вы можете попробовать для этого DownloadManager.

30.06.2015
  • Но я не хочу загружать файл, я просто хочу отобразить его для пользователя. 30.06.2015

  • 2

    Второй вариант лучше подходит для Android после получения файла из облака.

    Используйте MimeType как «image/*», который обычно работает для всех изображений и открывается в галерее по умолчанию.

    30.06.2015
  • Но мне нужно, чтобы это было общим для нескольких разных типов MIME. Вы предлагаете определить его изображение/‹какой-то тип› и изменить тип на * только для изображений? 30.06.2015
  • В качестве дополнительной информации - я попробовал этот метод несколькими способами, и теперь он использует только намерение.setData(myFileURI) вместо явной установки типа MIME. Что происходит, будь то PDF или PNG, он начинает загрузку в менеджере загрузок и возвращается в приложение. Я действительно хочу просмотреть файл, а НЕ скачать его. 30.06.2015
  • Хорошо, это было предложение, основанное на нестандартном/всем просмотре изображений на Android. Однако для просмотра их в Интернете у вас должна быть ссылка (URL-адрес изображения) на файл и запуск их в веб-просмотре/настраиваемом веб-просмотре. Дайте мне знать, если вам нужен код для этого. 01.07.2015
  • Я бы хотел увидеть код, как это сделать с помощью веб-просмотра @Kay. Одна из проблем заключается в том, что это не просто изображения; нужна поддержка DOC и PDF. Другая проблема в том, что у меня нет прямой ссылки на файл; это веб-обработчик, который возвращает мне файл на основе идентификатора файла. 01.07.2015

  • 3

    В итоге я классифицировал тип MIME, как показано выше. Если тип "image/*", я отображаю изображение непосредственно в WebView.

    Если тип «application/*», то я встраиваю его в документы Google, используя 1-й метод, и отображаю его в WebView.

    Все еще ищет лучшее решение.

    02.07.2015
    Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..