Пакет | flash.desktop |
Класс | public final class Updater |
Наследование | Updater Object |
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0 |
update()
.
Класс Updater поддерживается только в профиле персональных компьютеров. Его не поддерживают программы расширенного рабочего стола (которые устанавливаются с помощью собственной программы установки), а также программы с профилем AIR для мобильных устройств или профилем AIR для телевизионных устройств. Проверьте свойство Updater.isSupported
.
Приложение расширенного рабочего стола (которое устанавливается с помощью собственной программы установки) может загрузить новую версию собственного установщика и запустить ее с помощью метода File.openWithDefaultApplication()
.
Связанные элементы API
Свойство | Определено | ||
---|---|---|---|
constructor : Object
Ссылка на объект класса или функцию конструктора для данного экземпляра объекта. | Object | ||
isSupported : Boolean [статические] [только для чтения]
Свойству isSupported задается значение true, если текущая платформа поддерживает класс Updater, в противном случае задается значение false. | Updater |
Метод | Определено | ||
---|---|---|---|
Updater()
Функция конструктора для класса Updater. | Updater | ||
Показывает, определено ли заданное свойство для объекта. | Object | ||
Показывает, есть ли экземпляр класса Object в цепи прототипов объекта, заданного в качестве параметра. | Object | ||
Показывает наличие заданного свойства и его перечисляемость. | Object | ||
Задает доступность динамического свойства для операций цикла. | Object | ||
Возвращает строковое представление этого объекта, отформатированного в соответствии со стандартами, принятыми для данной локали. | Object | ||
Возвращает строковое представление заданного объекта. | Object | ||
Производит обновление версии текущего запущенного приложения на версию приложения, указанную в файле AIR. | Updater | ||
Возвращает элементарное значение заданного объекта. | Object |
isSupported | свойство |
Updater | () | Конструктор |
public function Updater()
Версии среды выполнения: | AIR 1.0 |
Функция конструктора для класса Updater. Обратите внимание, что метод update()
не является статическим методом класса. Для вызова метода update()
необходимо сначала создать объект Updater.
update | () | метод |
public function update(airFile:File, version:String):void
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0 |
Производит обновление версии текущего запущенного приложения на версию приложения, указанную в файле AIR. Необходимо, чтобы приложение в файле AIR имело тот же идентификатор (appID
), что и текущее запущенное приложение.
Вызов этого метода приводит к завершению работы приложения (как это происходит при вызове метода NativeApplication.exit()
). Такое поведение объясняется тем, что Adobe AIR не может провести полное обновление приложения без завершения его работы. После успешного проведения обновления версии приложения на более новую, оно запускается вновь. Если установка новой версии не может быть завершена (например, если ее идентификатор приложения не совпадает с идентификатором существующего приложения), то программа установки AIR выводит сообщение об ошибке, и старая версия приложения запускается снова.
Обновляемое приложение запускается снова независимо от результата проведения обновления. Ошибки в процессе обновления могут быть вызваны причинами, которые не зависят от приложения, например, отсутствие у пользователя прав для установки приложения. Приложения должны уметь определять характер ошибки, чтобы избежать повторных попыток обновления, приводящих к ошибке. В результате бесконечно повторяющегося цикла попыток обновления приложение просто откажется работать. Одним из способов проверки результата обновления приложения является сравнение версии текущего приложения до обновления и после него, когда приложение запустится вновь.
При проверке приложения с использованием AIR Debug Launcher (ADL) вызов метода update()
приводит к исключению IllegalOperationError.
При обновлении версии приложения в Mac OS пользователь должен обладать всеми необходимыми правами на запись в каталог приложения. В Windows или Linux пользователь должен обладать правами администратора.
Если обновленная версия приложения требует обновления среды выполнения, данное обновление устанавливается также. Для обновления среды выполнения пользователь данного компьютера должен обладать правами администратора.
Примечание. В целях безопасности указание параметра version
является обязательным. Проверка версии приложения в файле AIR позволяет исключить возможность установки более старой версии приложения, в которой, возможно, содержится уязвимость системы безопасности, которую удалось исправить в новой версии.
Параметры
airFile:File — Объект File, указывающий на файл AIR, в котором хранится версия приложения для обновления.
| |
version:String — Требуемая версия нового файла AIR. Для успешного проведения обновления необходимо, чтобы строка атрибута version основного элемента application файла дескриптора приложения для файла AIR совпадала с данным значением.
|
Выдает
IllegalOperationError — Данный метод был вызван при работе в ADL.
|
Связанные элементы API
Пример ( Использование этого примера )
update()
не является статическим методом класса. Необходимо создать объект Updater и вызвать метод update()
этого объекта.
import flash.fileSystem.File; import flash.desktop.Updater; var updater:Updater = new Updater(); var airFile:File = File.applicationStorageDirectory.resolvePath("Example Application.air"); var version:String = "2.01"; updater.update(airFile, version);
Tue Jun 12 2018, 11:34 AM Z