2016-02-27 2 views
0

У меня есть CodePush приложения, которое имеет три развертываний: тестирование, постановки и производства.Каким образом приложение Cordova app знает, что среда CodePush применяется?

У меня есть разные приложения сборки, которые совпадают с этим:

  • сборки, что делает из тестеров (тестирование)
  • Скопление, которая выходит к группе пользователей предварительного просмотра (постановка)
  • Производственная сборка (производство).

Как CodePush знать, какое развертывание необходимо отправить в сборку?

Как настроить мое приложение, чтобы убедиться, что правильная сборка (например, промежуточная версия приложения) получает правильное развертывание (например, развертывание промежуточного уровня в CodePush)?

ответ

1

Сервер CodePush знает, какое развертывание вы хотите запросить для обновлений, на основе ключа развертывания, который настроен в файле config.xml или передан на вызов sync (с последующим преимуществом). Если вы хотите создать три отдельных сборки для QA/промежуточной сборки/производства, вам просто нужно убедиться, что вы обновили ключ развертывания, который установлен в вашем файле config.xml, перед запуском cordova build для создания файла APK или IPA.

К сожалению, у Кордовы нет стандартного способа определения нескольких сред, что позволит вам добавить ключи для каждой среды к config.xml и выбрать один из них, когда вы будете строить среду, специфичную для конкретной среды.

В зависимости от того, как структурировано ваше приложение, вы также можете полностью пропустить файл config.xml и просто передать ключ развертывания непосредственно на звонок до sync(). Затем вам просто нужно убедиться, что ваше приложение каким-то образом определяет все необходимые ключи в конфигурации и загружает правильный для каждой сборки. Вы можете взглянуть на это starter project, чтобы понять, как это вообще можно сделать.

+0

Спасибо, Джонатан. Я использую checkForUpdate() вместо sync(), но из документов я вижу, что оба будут принимать аргумент arg для ключа развертывания. В основе этого вопроса лежит разработка способов продвижения релизов. Поскольку наши сборки знают, что они собой представляют (тест, постановка или производство), мне будет довольно легко передать соответствующий ключ развертывания с помощью checkForUpdate() – onblur

+0

Awesome! Я хотел бы больше поговорить о настройке сборки для каждой среды. Отправьте мне письмо по электронной почте на [email protected], если вы хотите синхронизировать его. Для нашей команды было бы очень важно понять, как вы это делаете. Благодаря! –

Смежные вопросы