Отличия подготовки проекта для разных платформ — различия между версиями

Материал из wiki.appsalutecreator.com
Перейти к: навигация, поиск
Строка 117: Строка 117:
 
  - 3. И переименовывается на default.dat.
 
  - 3. И переименовывается на default.dat.
 
*Для запуска приложение также рядом с .exe файлом должен лежать файл steam_appid.txt, содержащий только id приложения (просто число, без "id=" и т.д.). Этот id дают маркетологи. А вообще его нужно положить в конфигурациях .....\project\platforms\win_abs. При сборке он подтянется.
 
*Для запуска приложение также рядом с .exe файлом должен лежать файл steam_appid.txt, содержащий только id приложения (просто число, без "id=" и т.д.). Этот id дают маркетологи. А вообще его нужно положить в конфигурациях .....\project\platforms\win_abs. При сборке он подтянется.
 +
*Данная платформа не поддерживает социальные сети и клауд. Поэтому соответствующие объекты нужно сделать картинками. Иначе не соберется.
  
 
[[Category:Projects]]
 
[[Category:Projects]]

Версия 14:56, 10 июня 2016

Simple.png

AppSalute Game Сreator позволяет использовать один проект (один лейаут), чтобы собирать приложение для разных платформ (маркетов). Значительная часть проекта одинакова для всех платформ, но существуют некоторые различия. Для того чтобы иметь один лейаут для всех платформ используется внутренняя переменная "market", которая задается в конфигурационном файле platform.icf. И которая переносится в приложении непосредственно при сборке.

В самом же проекте, проверяя значение этой переменной реализуем нужную логику. На данный момент такую проверку можно делать в машине состояний, а также в таскорганайзере.

На данный момент существует 2 основных вида сборок - для мобильных платформ (google, ios) и для веб-платформ (facebook). Как подготовить версию для веб-платформ из версии для мобильных платформ описано в этой статье: https://docs.google.com/document/d/1seTO3nphCsqqYHjumkl6b4r9RWLNGdokHjpDyDDP1T4/edit#

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

Google Play

  • Значение переменной market = "android".
  • Если в проекте есть курсоры (для веб-версий), то при запуске (на глобальном экране) приложения опциям нужно вызывать состояние disableCursor.
  • Для приложений GP есть возможность использовать социальную сеть G+. Для этого при запуске приложения (на глобальном экране) нужно установить объекту Esocial параметр socialnet = 2.
  • На GP есть система внутриигровых достижений (ачивок). Для их корректной работы должен быть настроен объект Gamecenter. В частности в нем должны быть указаны ключи ачивок. Ачивки заводят маркетологи, они же дают ключи.
  • Для доступа к сервису GP в проекте должно быть 2 кнопки: одна для доступа к ачивкам, вторая для доступа к лидерам. Также, если в проект поддерживаются локальные достижения, то в Gamecenter нужно указать текст для этого достижения.
  • По системной кнопке "back" должно закрываться открытое окно. Если открытых окон нет, показывается окно выхода из приложения / хиддена / миниигы и тд.
  • Если в приложении есть реклама, то в файле конфигурации (platform.icf) должны быть указаны параметры для провайдера рекламы.
  • Если используется флурри в файле viewer_google.xml должен быть указан game_id.
  • Так как упаковка экранов оптимизирована для веб-платформ, то на данный момент после экспорта в файле *.sirx нужно найти ноду в которой указан адрес для закачки 1-го пака(имеет вид <pack fsize="406951055" url="imgs1/res.dat" md5="7a...d" p="1"/>) и изменить в ней url на следующий: "http://imgs1/res.dat".
  • Размер apk файла для приложения на GP ограничено 100 мб. Если приложение больше этого размера, то его нужно разделить на 2 пака. Содержимое второго пака нужно поместить в zip архив и переименовать его в соответствии с шаблоном main.v1.v2.v3.****.obb (v1, v2, v3 - составные версии приложения, ***** - некое имя приложения на GP). Потом этот файл нужно будет поместить в соответствующий каталог для сборки.
  • Перед тестированием версию всегда нужно заливать в альфу GP. Что бы версию можно было залить в альфу, нужно чтобы текущая версия была выше предыдущей.

iTunes

  • Значение переменной market = "ios".
  • Если в проекте есть курсоры (для веб-версий), то при запуске (на глобальном экране) приложения опциям нужно вызывать состояние disableCursor.
  • На iTunse есть система внутриигровых достижений (ачивок). Для их корректной работы должен быть настроен объект Gamecenter. В частности в нем должны быть указаны ключи ачивок. Ачивки заводят маркетологи, они же дают ключи.
  • Для доступа к геймцентру в проекте должно быть кнопка, которая вызывает состояние achievements_show. Также, если в проект поддерживаются локальные достижения, то в Gamecenter нужно указать текст для этого достижения.
  • Если в приложении есть реклама, то в файле конфигурации (platform.icf) должны быть указаны параметры для провайдера рекламы.
  • Если используется флурри в файле viewer_iphone.xml должен быть указан game_id.
  • Приложение пакуем в 2 пака(настройки как для GP), 2 пак архивом не жмем.

Amazon Appstore

  • Значение переменной market = "amazon".
  • Если в проекте есть курсоры (для веб-версий), то при запуске (на глобальном экране) приложения опциям нужно вызывать состояние disableCursor.
  • На Amazon Appstore есть система внутриигровых достижений (ачивок). Для их корректной работы должен быть настроен объект Gamecenter. В частности в нем должны быть указаны ключи ачивок. Ачивки заводят маркетологи, они же дают ключи.
  • Для доступа к геймцентру в проекте должно быть кнопка, которая вызывает состояние achievements_show. Также, если в проект поддерживаются локальные достижения, то в Gamecenter нужно указать текст для этого достижения.
  • По системной кнопке "back" должно закрываться открытое окно. Если открытых окон нет, показывается окно выхода из приложения / хиддена / миниигы и тд.
  • Если в приложении есть реклама, то в файле конфигурации (platform.icf) должны быть указаны параметры для провайдера рекламы.
  • Если используется флурри в файле viewer_amazon.xml должен быть указан game_id.
  • Так как упаковка экранов оптимизирована для веб-платформ, то на данный момент после экспорта в файле *.sirx нужно найти ноду в которой указан адрес для закачки 1-го пака(имеет вид <pack fsize="406951055" url="imgs1/res.dat" md5="7a...d" p="1"/>) и изменить в ней url на следующий: "http://imgs1/res.dat".
  • Приложение разбивается на 2 пака. Содержимое второго пака нужно поместить в zip архив и переименовать его в pack.zip. Потом этот файл нужно будет поместить в соответствующий каталог для сборки.

Samsung Galaxy Apps

  • Значение переменной market = "samsung".
  • Если в проекте есть курсоры (для веб-версий), то при запуске (на глобальном экране) приложения опциям нужно вызывать состояние disableCursor.
  • Данный маркет не имеет собственного геймцентра, но на нем можно использовать локальные достижения. Для этого в Gamecenter нужно указать текст для этого достижения.
  • По системной кнопке "back" должно закрываться открытое окно. Если открытых окон нет, показывается окно выхода из приложения / хиддена / миниигы и тд.
  • Если используется флурри в файле viewer_samsung.xml должен быть указан game_id.
  • Так как упаковка экранов оптимизирована для веб-платформ, то на данный момент после экспорта в файле *.sirx нужно найти ноду в которой указан адрес для закачки 1-го пака(имеет вид <pack fsize="406951055" url="imgs1/res.dat" md5="7a...d" p="1"/>) и изменить в ней url на следующий: "http://imgs1/res.dat".
  • Приложение разбивается на 2 пака. Содержимое второго пака нужно поместить в zip архив и переименовать его в pack.zip. Потом этот файл нужно будет поместить в соответствующий каталог для сборки.
  • Samsung Galaxy Apps просит, чтобы их приложение чем то отличалось, от версии на GP. На начальном этапе игры можно сделать подарок, где указать, что это уникальная особенность для пользователей данного маркета.

BlackBerry World

  • Значение переменной market = "blackberry".
  • Если в проекте есть курсоры (для веб-версий), то при запуске (на глобальном экране) приложения опциям нужно вызывать состояние disableCursor.
  • Данный маркет не имеет собственного геймцентра, но на нем можно использовать локальные достижения. Для этого в Gamecenter нужно указать текст для этого достижения.
  • Флурри не используется, но для работы других сервисов статистики в файле viewer_blackberry.xml должна быть указана заглушка в параметре game_id.
  • Так как упаковка экранов оптимизирована для веб-платформ, то на данный момент после экспорта в файле *.sirx нужно найти ноду в которой указан адрес для закачки 1-го пака(имеет вид <pack fsize="406951055" url="imgs1/res.dat" md5="7a...d" p="1"/>) и изменить в ней url на следующий: "http://imgs1/res.dat".
  • Приложение разбивается на 2 пака. Содержимое второго пака нужно поместить в zip архив и переименовать его в pack.zip. Потом этот файл нужно будет поместить в соответствующий каталог для сборки.
  • Данная платформа не поддерживает социальные сети. Поэтому после сборки, нужно в layout.xml найти объект "facebook" и изменить его тип на "image". В самом проекте, в тех местах где идет обращение к социальным сервисам нужно подключить сообщение заглушку. В основном такую проверку нужно делать для кнопок, открывающих окна с социалкой и попап-окна логина.

Windows Store 8.1

  • Значение переменной market = "ws81".
  • Если в проекте есть курсоры (для веб-версий), то при запуске (на глобальном экране) приложения опциям нужно вызывать состояние disableCursor.
  • Данный маркет не имеет собственного геймцентра, но на нем можно использовать локальные достижения. Для этого в Gamecenter нужно указать текст для этого достижения.
  • Флурри не используется, но для работы других сервисов статистики в файле viewer_blackberry.xml должна быть указана заглушка в параметре game_id.
  • Приложение пакуем в 2 пака(настройки как для GP), 2 пак архивом не жмем.
  • Данная платформа не поддерживает социальные сети. Поэтому после сборки, нужно в layout.xml найти объект "facebook" и изменить его тип на "image". В самом проекте, в тех местах где идет обращение к социальным сервисам нужно подключить сообщение заглушку. В основном такую проверку нужно делать для кнопок, открывающих окна с социалкой и попап-окна логина.

Facebook

  • Значение переменной market = "webfb".
  • Для корректной работы курсора нужно указать его для каждого экрана в проекте, а также поместить на расшаренной сцене с альфой = 0. (Чтобы подтягивался ресурс при экспорте и но не было переключений между текстурами). При загрузке приложения опциям нужно вызывать состояние readCursor. Также в файле app.icf в параметрах нужно указать id ресурса для курсора (используя param_name и param_value).
  • Геймцентра нет, но есть механизм постов на стену при получении очередного достижения. В Gamecenter указываем ключи этих достижений. Ключи представляют собой адрес к файлу ачивки на сервере. Для показа ачивок используются локальные достижения. Для этого в Gamecenter нужно указать текст для этих достижений.
  • В веб-версиях человек может играть в фулскрине, для этого нужно сделать кнопки смены режима (обычный/фулскрин). Также нужно предусмотреть выход из фулскрина, при совершении покупки (Устанавливать опциям fullScreen = 0, при нажатии на кнопку совершения покупки).
  • Для веб-версий нужно отключить иконку социальной сети, выключив vis картинке, указанной в поле snIco, в темплейте иконки друга.
  • Для каждой покупки нужен специальный файл, который должен быть загружен на сервер. Так же обстоит дело с постами на стену (при сдаче коллекций, получении нового уровня, ачивки и тд). При получении очередного достижения (сдача коллекции, новый уровень и тд), человек может отправить себе на стену пост об этом достижении. При этом на соответствующей кнопке вместо "Принять" нужно писать "Поделиться".
  • Каждый экран должен быть упакован в отдельный пак. После экспорта, видео в формате absmp4 нужно изменить формат на mp4. Также нужно изменить расширение для видео в файле *.sirx.

Yahoo

  • Значение переменной market = "webya".
  • Для корректной работы курсора нужно указать его для каждого экрана в проекте, а также поместить на расшаренной сцене с альфой = 0. (Чтобы подтягивался ресурс при экспорте и но не было переключений между текстурами). При загрузке приложения опциям нужно вызывать состояние readCursor. Также в файле app.icf в параметрах нужно указать id ресурса для курсора (используя param_name и param_value).
  • Таким же образом (используя param_name и param_value) указываем параметр lang = en.
  • Геймцентра нет, но есть локальные достижения. Для их показа в Gamecenter нужно указать текст для этих достижений.
  • В веб-версиях человек может играть в фулскрине, для этого нужно сделать кнопки смены режима (обычный/фулскрин). Также нужно предусмотреть выход из фулскрина, при совершении покупки (Устанавливать опциям fullScreen = 0, при нажатии на кнопку совершения покупки).
  • Для веб-версий нужно отключить иконку социальной сети, выключив vis картинке, указанной в поле snIco, в темплейте иконки друга.
  • Механизма постов на стену нет, надписи "Поделиться" быть не должно. Кнопку "Поделиться" из окна коллекций делаем недоступной.
  • Также прячем в настройках чекбокс "Уведомления". На Yahoo их нет.
  • Каждый экран должен быть упакован в отдельный пак. После экспорта, видео в формате absmp4 нужно изменить формат на mp4. Также нужно изменить расширение для видео в файле *.sirx.

Одноклассники

  • Значение переменной market = "webok".
  • В проекте весь интерфейс, тексты должны быть на Русском. В app.icf указываем lang="ru".
  • В проекте должна быть отключена возможность смены языка ( всегда должен быть Русский).
  • На иконках постов, игровых картинках не должно быть надписей на иностранном языке ( в проекте если market="webok" меняем некот. графику) .
  • Иконки пользователей в социальных окнах должны вписываться ( в объекте image указываем параметр тайлинг="вписать"), т.к. одноклассники отдают нам не квадратные иконки.
  • Тексты постов, уведомлений - д.б. на Русском.
  • В проекте не д.б. внешних ссылок, кроме как отправить письмо и ссылки на группы в Одноклассниках.
  • В проекте не д.б. иконок других соцсетей.
  • Для корректной работы курсора нужно указать его для каждого экрана в проекте, а также поместить на расшаренной сцене с альфой = 0. (Чтобы подтягивался ресурс при экспорте и но не было переключений между текстурами). При загрузке приложения опциям нужно вызывать состояние readCursor. Также в файле app.icf в параметрах нужно указать id ресурса для курсора (используя param_name и param_value).
  • Таким же образом (используя param_name и param_value) указываем параметр lang = en.
  • Геймцентра нет, но есть локальные достижения. Для их показа в Gamecenter нужно указать текст для этих достижений.
  • В веб-версиях человек может играть в фулскрине, для этого нужно сделать кнопки смены режима (обычный/фулскрин). Также нужно предусмотреть выход из фулскрина, при совершении покупки (Устанавливать опциям fullScreen = 0, при нажатии на кнопку совершения покупки).
  • Для веб-версий нужно отключить иконку социальной сети, выключив vis картинке, указанной в поле snIco, в темплейте иконки друга.
  • Механизма постов на стену нет, надписи "Поделиться" быть не должно. Кнопку "Поделиться" из окна коллекций делаем недоступной.
  • Также прячем в настройках чекбокс "Уведомления". На Yahoo их нет.
  • Каждый экран должен быть упакован в отдельный пак. После экспорта, видео в формате absmp4 нужно изменить формат на mp4. Также нужно изменить расширение для видео в файле *.sirx.

Steam

  • Значение переменной market = "steam".
  • Экспортируется как обычная виндовая версия win_abs.
  • Для отображения сплеш скрина компании рядом с .exe файлом должен лежать файл default.dat. Создается он следующим образом:
- 1. В папке ..\project\icons\splash выбирается иконка размера 1027*768.
- 2. Через paint эта картинка сохраняется как .bmp.
- 3. И переименовывается на default.dat.
  • Для запуска приложение также рядом с .exe файлом должен лежать файл steam_appid.txt, содержащий только id приложения (просто число, без "id=" и т.д.). Этот id дают маркетологи. А вообще его нужно положить в конфигурациях .....\project\platforms\win_abs. При сборке он подтянется.
  • Данная платформа не поддерживает социальные сети и клауд. Поэтому соответствующие объекты нужно сделать картинками. Иначе не соберется.