Открыть локальный файл с помощью AIR / Flex
Я написал приложение AIR, которое загружает видео и документы с сервера. Видео воспроизводятся внутри приложения, но я хотел бы, чтобы пользователь мог открывать документы в своих собственных приложениях.
Я ищу способ предложить пользователю открыть / Сохранить как локальный файл, хранящийся в каталоге хранения приложений. Я попытался использовать классы FileReference + URLRequest, но это вызывает исключение, для которого требуется удаленный url-адрес.
мое последнее средство-просто скопировать файл на рабочий стол:
5 ответов
можно использовать openWithDefaultApplication();
функция, доступная в классе File (я считаю, что она доступна только в AIR 2)
например:
var file:File = File.desktopDirectory.resolvePath(fileLocation);
file.openWithDefaultApplication();
только так я мог понять, как это сделать, не просто перемещая файл и не говоря пользователю, чтобы передать его в браузер.
navigateToURL(new URLRequest(File.applicationStorageDirectory.nativePath + "/courses/" + fileName));
Это первый выпуск рамки диафрагмы FluorineFx.
платформа обеспечивает встроенную интеграцию ОС (только для Windows) поддержка настольных приложений AIR.
фреймворк расширяет приложения Adobe AIR ненавязчивым способом: просто перераспределите предоставленные библиотеки с помощью приложения AIR, во время выполнения фреймворк автоматически подключится к вашему приложению.
особенности
- запуск собственные приложения и документы с предоставленной библиотекой apsystem
- сделайте скриншоты всего экрана с предоставленной библиотекой apimaging
- доступ к контактам Outlook из приложения Air с предоставленной библиотекой apoutlook
в настоящее время adobe не поддерживает открытие файлов в приложениях по умолчанию. Передача его в браузер кажется единственным способом заставить его работать.
однако вы можете использовать FileStream и написать небольшой html-файл с некоторым javascript, который устанавливает местоположение iframe в файл, а затем после 100 мс или около того вызывает окно.закрывать.)( Затем откройте этот файл в браузере.
для меня это:
var request:URLRequest = new URLRequest();
request.url = file.url;
navigateToURL(request, "_blank");
на navigateToURL(file.nativePath)
не работал с пути, " / users/mydirectory/...- был снаружи изолированную программную среду приложения. AIR позволяет открывать только некоторые протоколы с помощью navigateToURL()
.