| 
  
           
            Каждый раз при создании обновленной версии существующего приложения AIR следует подписывать обновленное приложение. При оптимальном раскладе для подписи обновленной версии используется тот же сертификат, что и для предыдущей версии. В этом случае процесс подписи в точности схож с первоначальной подписью приложения.
            
            Если срок сертификата, использованного для подписи предыдущей версии приложения, истек, и он был заменен или обновлен, для подписи обновленной версии можно использовать обновленный или новый (полученный на замену) сертификат. Для этого следует подписать приложение новым сертификатом
            
             и
            
            применить подпись переноса к оригинальному сертификату. Подпись переноса подтверждает, что владелец исходного сертификата опубликовал обновление.
            
            Прежде чем применить подпись переноса, обратите внимание на следующие моменты.
            
            
             
              Чтобы применить подпись переноса, исходный сертификат должен быть действителен или быть просроченным не более чем на 365 дней. Этот период считается льготным, и его продолжительность может быть изменена в будущем.
              
              
               
                Примечание.
               
               До выхода AIR 2.6 льготный период составлял 180 дней.
              
             
              После окончания 365-дневного льготного периода, который отсчитывается с момента истечения действия сертификата, подпись переноса не может быть применена. В этом случае пользователям потребуется перед установкой обновления удалить текущую версию приложения.
             
             
              365-дневный льготный период применяется только к приложениям, для которых в пространстве имен дескриптора приложения указана версия AIR 1.5.3 или более поздняя версия.
              
            
             Важная информация.
            
            Подписание обновлений с использованием подписи переноса просроченного сертификата является временным решением. Окончательное решение предполагает разработку стандартизированной процедуры подписания для управления развертыванием обновлений приложений. К примеру, каждое обновление подписывается последним имеющимся сертификатом, и применяется сертификат переноса — сертификат, использованный для подписи предыдущего обновления (если таковое было). Каждое обновление размещается на сервере с собственным URL, с помощью которого происходит загрузка приложения пользователями. Дополнительные сведения см. в разделе «
            Процедура подписания для обновлений приложений 
            ».
            
            Следующая таблица и рисунок иллюстрируют процесс обращения с подписями переноса:
            
            
             
              
               | 
                 Сценарий
                 | 
                 Состояние оригинального сертификата
                 | 
                 Действие разработчика
                 | 
                 Действие пользователя
                 |  
               | 
                 Приложение на основе среды выполнения Adobe AIR 1.5.3 или более новой версии
                 | 
                 Действительный
                 | 
                 Опубликуйте последнюю версию приложения AIR
                 | 
                 Действия не требуются
                 
                 Приложение обновляется автоматически
                 |  
               | 
                 Срок истек, но не более 365 дней назад
                 | 
                 Подпишите приложение новым сертификатом. Примените подпись переноса с использованием устаревшего сертификата.
                 | 
                 Действия не требуются
                 
                 Приложение обновляется автоматически
                 |  
               | 
                 Просрочен, льготный период закончился
                 | 
                 Подпись переноса не может быть применена для обновления приложения AIR.
                 
                 Вместо этого опубликуйте другую версию приложения AIR, используя новый сертификат. Пользователи могут установить новую версию приложения AIR после удаления существующей версии.
                 | 
                 Удалите текущую версию приложения AIR и установите последнюю версию
                 |  
               |  | 
                 Действительный
                 | 
                 Опубликуйте последнюю версию приложения AIR
                 | 
                 Действия не требуются
                 
                 Приложение обновляется автоматически
                 |  
               | 
                 Просрочен, льготный период закончился
                 | 
                 Подпись переноса не может быть применена для обновления приложения AIR.
                 
                 Вместо этого опубликуйте другую версию приложения AIR, используя новый сертификат. Пользователи могут установить новую версию приложения AIR после удаления существующей версии.
                 | 
                 Удалите текущую версию приложения AIR и установите последнюю версию
                 |  
               |  | 
                 Любой
                 | 
                 Подпишите приложение AIR действующим сертификатом и опубликуйте его последнюю версию.
                 | 
                 Удалите текущую версию приложения AIR и установите последнюю версию
                 |  
             
               
              Процедура подписания для обновлений
              
           
            
           
           
            Перенос приложения AIR для использования нового сертификата
           
            
             Процедура переноса приложения AIR на новый сертификат при обновлении приложения:
             
             
              
               Создайте обновление приложения
              
              
               Упакуйте и подпишите файл обновления AIR
               
                новым
               
               сертификатом
              
              
               Подпишите файл AIR снова, на этот раз
               
                оригинальным
               
               сертификатом с помощью команды ADT
               
                -migrate
               
               
             Файл AIR, подписанный с помощью команды
             
              -migrate
             
             , может также использоваться для установки новой версии приложения — не только для обновления любой прошлой версии, подписанной устаревшим сертификатом.
             
             
              Примечание.
             
             При обновлении приложения, опубликованного для версии AIR, предшествующей 1.5.3, в дескрипторе приложения необходимо указать исходный идентификатор издателя. В противном случае перед установкой обновления пользователям приложения потребуется удалить более раннюю версию.
             
             Используйте команду ADT -
             
              migrate
             
             со следующим синтаксисом:
             adt -migrate SIGNING_OPTIONS air_file_in air_file_out 
             
              
               
                SIGNING_OPTIONS
               
               . Параметры подписи определяют закрытый ключ и сертификат подписи файла AIR. Эти параметры должны определять
               
                оригинальный
               
               сертификат подписи (их описание приводится в разделе «
               
                Параметры подписания кода ADT
               
               »).
              
              
               
                air_file_in
               
               — обновляемый файл AIR, подписанный
               
                новым
               
               сертификатом.
              
              
               
                air_file_out
               
               — создаваемый файл AIR.
               
             
              Примечание.
             
             Имена входных и выходных файлов AIR должны отличаться.
             
             Следующий пример иллюстрирует вызов функции ADT с флагом
             
              -migrate
             
             для применения подписи переноса к обновленной версии приложения AIR:
             adt -migrate -storetype pkcs12 -keystore cert.p12 myAppIn.air myApp.air 
             
              Примечание.
             
             Команда
             
              -migrate
             
             была добавлена в ADT в AIR версии 1.1.
             
           
            
           
           
            Перенос приложения AIR с собственным файлом установки на новый сертификат
           
            
             Приложение AIR, опубликованное как собственный файл установки для конкретной платформы (например, приложение, использующее собственный API платформы), не может быть подписано командой ADT
             
              -migrate
             
             , поскольку не является файлом air. Для переноса приложения AIR, опубликованного в качестве собственного расширения платформы, на новый сертификат предусмотрена другая процедура:
             
             
              
               Создайте обновление приложения.
              
              
               Убедитесь, что в файле-дескрипторе приложения (app.xml) тег
               
                <supportedProfiles>
               
               содержит как профиль настольной системы (desktop), так и расширенный профиль настольной системы (extendedDesktop); либо совсем удалите тег
               
                <supportedProfiles>
               
               из дескриптора приложения.
              
              
               Упакуйте и подпишите обновленное приложение
               
                как файл air
               
               при помощи команды ADT
               
                -package
               
               с
               
                новым
               
               сертификатом.
              
              
               Примените сертификат переноса к файлу .air, используя команду ADT
               
                -migrate
               
               с
               
                оригинальным
               
               сертификатом (как описано ранее в разделе «
               
                Перенос приложения AIR для использования нового сертификата
               
               »).
              
              
               Упакуйте файл .air в виде собственного установочного файла платформы при помощи команды ADT
               
                -package
               
               с флагом
               
                -target native
               
               . Поскольку приложение уже подписано, на этом шаге нет необходимости указывать сертификат подписи.
               
             В следующем примере показаны этапы 3–5 этой процедуры. Код вызывает программу ADT с командой
             
              -package
             
             , затем — с командой
             
              -migrate
             
             , затем снова с командой
             
              -package
             
             для упаковки обновленной версии приложения AIR в виде собственного файла установки данной платформы:
             adt -package -storetype pkcs12 -keystore new_cert.p12 myAppUpdated.air myApp.xml myApp.swf 
adt -migrate -storetype pkcs12 -keystore original_cert.p12 myAppUpdated.air myAppMigrate.air 
adt -package -target native myApp.exe myAppMigrate.air 
           
            
           
           
            Перенос на новый сертификат приложения AIR, использующего собственное расширение платформы
           
            
             Приложение AIR, использующее собственное расширение платформы, не может быть подписано при помощи команды ADT
             
              -migrate
             
             . Его перенос также не может быть выполнен по процедуре переноса приложения AIR с собственным файлом установки, поскольку оно не может быть опубликовано как промежуточный файл .air. Для переноса приложения AIR, использующего собственное расширение платформы, на новый сертификат предусмотрена другая процедура:
             
             
              
               Создайте обновление приложения
              
              
               Упакуйте и подпишите обновленный собственный файл установки при помощи команды ADT
               
                -package
               
               . Упакуйте приложение с указанием
               
                нового
               
               сертификата и включите в команду флаг
               
                -migrate
               
               с указанием
               
                оригинального
               
               сертификата.
               
             Для вызова команды ADT
             
              -package
             
             с флагом
             
              -migrate
             
             используется следующий синтаксис:
             adt -package AIR_SIGNING_OPTIONS -migrate MIGRATION_SIGNING_OPTIONS -target package_type NATIVE_SIGNING_OPTIONS output app_descriptor FILE_OPTIONS 
             
              
               
                AIR_SIGNING_OPTIONS
               
               . Параметры подписи определяют закрытый ключ и сертификат подписи файла AIR. Эти параметры определяют
               
                новый
               
               сертификат подписи (их описание приводится в разделе «
               
                Параметры подписания кода ADT
               
               »).
              
              
               
                MIGRATION_SIGNING_OPTIONS
               
               . Параметры подписи определяют закрытый ключ и сертификат подписи файла AIR. Эти параметры определяют
               
                оригинальный
               
               сертификат подписи (их описание приводится в разделе «
               
                Параметры подписания кода ADT
               
               »).
              
              
               Прочие параметры те же, что применяются при упаковке приложения AIR с собственным файлом установки; они описаны в разделе «
               
                Команда ADT package
               
               ».
               
             В следующем примере иллюстрируется вызов программы ADT с командой
             
              -package
             
             и флагом
             
              -migrate
             
             для упаковки обновленной версии приложения AIR, использующего собственное расширение платформы, и для применения к нему подписи переноса:
             adt -package -storetype pkcs12 -keystore new_cert.p12 -migrate -storetype pkcs12 -keystore original_cert.p12 -target native myApp.exe myApp.xml myApp.swf 
             
              Примечание.
             
             Флаг
             
              -migrate
             
             команды
             
              -package
             
             доступен в программе ADT в версиях AIR 3.6 и более поздних.
             
           |  |  |