как определить производственную среду в мобильном приложении jquery phonegap?

У меня простой вопрос. Я написал мобильное приложение jquery, которое отлично работает и развернуто в производстве. У меня есть некоторые значения конфигурации, которые меняются из моей среды разработки в рабочую среду. Чтобы определить, работаю ли я в среде разработки, я использовал следующую строку кода (coffeescript)

env = if window.location.hostname.indexOf('localhost') == 0 then 'dev' else 'production'    

Это прекрасно работает. Но когда вы начинаете разрабатывать в среде phonegap, этого недостаточно. Например, при работе в симуляторе iOS 6 кажется, что window.location возвращает пустую строку.

Каков правильный способ обнаружения среды разработки в приложении jqm phonegap, которое работает во всех ситуациях?

Спасибо!


person serverman    schedule 21.03.2013    source источник


Ответы (1)


Я надеюсь, что вы используете разные идентификаторы пакетов для разработки и производства приложений. Затем вы можете использовать подключаемый модуль WizUtils и прочитать идентификатор пакета. А в операторе case switch JS вы можете установить конфигурации dev и prod в зависимости от идентификатора пакета. Таким образом, вам не нужно ничего менять в исходном коде при сборке продукта. если вы используете один и тот же идентификатор пакета для dev и prod, вам потребуется переменная, которая будет иметь текущее значение среды, и ее необходимо обновлять каждый раз, когда вы выполняете сборку для другой среды.

person Nishanth Nair    schedule 21.03.2013
comment
Спасибо - проверю. - person serverman; 22.03.2013