Наш новый мобильный проект решено было делать с использованием Titanium Studio, он позволяет быстро разрабатывать приложения для многих мобильных платформ с использованием Javascript. Однако работа с Push-уведомлениями оказалась не такой простой. В стандартных эмуляторах они отказывались работать. Это — инструкция для нашей команды как установить проект у себя.

Первым шагом нужно установить все необходимые сертификаты, это касается iOS-платформы. Их можно сгененрировать в Apple Developer Center, а в случае готового проекта, как у нас, они уже должны быть готовы.

Далее скачиваем и устанавливаем Titanium Studio. Далее указания для конкретных платформ.

iOS-уведомления

iOS может отображать уведомления только на реальном устройстве, так что придется прикупить себе айфон. И все бы ничего, если бы Titanium выбирал нужную команду (Team) при сборке проекта. А т.к. он этого не делает — придется делать вручную.

  1. Собираем iOS-проект в Titanium
  2. 37

  3. Переходим в <Project Dir>/build/iphone
  4. Открываем <Project>.xcodeproj
  5. Выбираем Team
  6. 62

  7. Запускаем проект в XCode при помощи реального устройства

Android-уведомления

Android позволяет получать уведомление на любое устройство, в т.ч. и на эмулятор. Главное чтобы пользователь вошел в свой Google-аккаунт. Самое прекрасное в том, что в обычном эмуляторе нет приложения Google Apps. Значит будем ставить другой эмулятор.

  1. Скачиваем эмулятор Genymotion
  2. Устанавливаем в нем любое устройство
  3. Для установки Google Apps нужно установить транслятор для разных архитектур. Установка пакетов в Genymotion осуществляется простым перетаскиванием архива в окно запущенного эмулятора. После этого виртуальное устройство нужно перезагрузить.
  4. Скачиваем и устанавливаем Google Apps под установленную версию Android.
  5. Если Google Apps крашаться заходим в эмуляторе в Google Play по прямой ссылке и обновляем.
  6. Собираем Android-проект в Titanium Studio
  7. Перетаскиваем файл <Project Dir>/build/android/bin/<Project>.apk в окно эмулятора

26

Буду рад если все это можно сделать проще, но пока, чтобы запустить проект для работы с уведомлениями, приходится изрядно помучаться.