Adobe AIR - список установленных приложений - PullRequest
2 голосов
/ 15 февраля 2010

Можно ли получить список установленных приложений AIR, опционально только от одного поставщика?

Или можно проверить, установлено ли одно приложение (проверено по имени / идентификатору / поставщику) (этот метод предпочтителен)

Спасибо.

Ответы [ 3 ]

3 голосов
/ 20 февраля 2010

Вы можете сделать это:

        private function loadAIR():void
        {
            var loader:Loader = new Loader();
            var loaderContext:LoaderContext = new LoaderContext();
            loaderContext.applicationDomain = ApplicationDomain.currentDomain;
            loader.contentLoaderInfo.addEventListener(Event.INIT, onInit);
            loader.load(new URLRequest("http://airdownload.adobe.com/air/browserapi/air.swf"), loaderContext);
        }

        private function onInit(e:Event):void
        {
            var air:Object = e.target.content;
            try
            {
              air.getApplicationVersion("appID", "publisherID", versionDetectCallback);
            }
            catch (e:Error)
            {
              trace('air not installed');
            }
        }

        private function versionDetectCallback(version:String):void
        {
            if (version == null)
            {
                trace('app not installed');
            }
            else
            {
                trace('app version ' + version + ' installed');
            }
        }
1 голос
/ 16 февраля 2010

Это интересный вопрос. Я не думаю, что на компьютере клиента есть места, где Adobe хранит список приложений AIR, установленных на компьютере, но вы можете найти его с помощью airdownload .

Еще одна достойная альтернатива - использовать Интеграция командной строки Adobe AIR 2.0 . При этом вы можете написать зависящий от ОС, но довольно простой скрипт (shell, ruby, python и т. Д.), Который рекурсивно проверяет некоторые каталоги на наличие файлов .AIR по имени, и если они не найдены, ваше приложение запуска может сказать «Извините, мы не нашли эти два приложения: X и Y. Пожалуйста, укажите их местоположение или загрузите их здесь». И после того, как они указали путь установки, вы можете определить, где у них могут быть установлены другие приложения AIR.

Или вы можете установить текстовый файл в их домашнем каталоге со списком установленных приложений AIR и прочитать его, чтобы выяснить, какие действия следует предпринять в дальнейшем. Это, вероятно, будет проще.

Надеюсь, это поможет, Ланс

0 голосов
/ 19 февраля 2010

Если вы знаете appID и publisherID, adobe.utils.ProductManager может иметь для вас что-то волшебное ... но productManager - настолько плохо документированный класс, что я предполагаю, что мое предложение является тупиковым. Я использовал его один раз для чего-то, и, насколько я помню, из-за расположения пакета я не получил никакой информации о коде, и это был процесс проб и ошибок.

...