Как заставить работать GREE ANE в Windows

Если вы захотели работать с GREE – издателем мобильных социальных игр и при этом хотите использовать AIR, то в данной статье я расскажу как настроить проект для работы с GREE ANE в Windows.

ВНИМАНИЕ: Данная статья актуальна для GREE Platform SDK for AIR® Ver 3.0.0 Rev 5 Openβ. Будет разобран пример сборки билда под iOS.

Да, уже вышла версия ANE 3.0.1 Rev 2 с поддрежкой AIR 3.3 и Android, но проблемы с компиляцией, о которых пойдет речь дальше, остались те же и рабочего билда под Android собрать пока не удалось.

Так же вам понадобиться работающая Mac OS в любом виде. От нее нам потребуется консоль. Да, целая ОС только ради консоли, это печально, но об этом позже.

В первую очередь вам нужно зарегистрироваться как разработчик. Потом скачать архив с ANE, примером и документацией. Там же видим ссылку на Developer’s Guide, его тоже нужно скачать. Так же нужно сразу настроить “песочницу”. Так же предполагается, что у вас имеются все необходимые сертификаты для сборки iOS приложений.

В Windows в Adobe Flash CS6 и Adobe Flash Builder 4.6 нельзя указать путь к последнему iOS 5.1 SDK как требует Developer’s Guide. И даже если обновиться до AIR SDK 3.3 и насильно пытаться добавить параметр -platformsdk и путь к папке в настройках, IDE от Adobe в Windows все равно запретит его использовать и не даст сохранить настройки. К счастью в AIR SDK 3.3 уже встроен iOS 5.1 SDK, но внезапно это не решает проблему – билд все равно не получается собрать, так как IDE зависает наглухо при компиляции.

Еще одна проблема – GREE ANE не поддерживает эмулятор iOS и Android. То есть дебажить придется только на устройстве.

GREE можно понять – они ориентировались на официальные Flash IDE, но давайте попробуем решить проблему. У нас есть два варианта: собирать все руками в консоли или попробовать настроить другую IDE.

Руками все собирать тяжко. Поэтому я выбрал второй вариант – перебирал разные IDE. Сработало все только с одной – FlashDevelop

Качаем, устанавливаем, при установке выбираем установку всех SDK. FlashDevelop сам скачает последние версии Flex SDK и AIR SDK 3.3, в который включен iOS 5.1 SDK. Так же у нас получится дебажить iOS приложения на устройстве.

Шаги настройки GREE ANE в проекте FlashDevelop:

  1. создаем новый проект (AIR Mobile AS3 App)
  2. копируем все сертификаты в папку cert и прописываем их файле SetupApplication.bat в папке bat
  3. в файле Run.bat в корне проекта закомментируем строку про Android в блоке :target и раскомментируем goto ios-debug или goto ios-test
  4. в том же файле нужно так же закомментировать строку set SCREEN_SIZE=NexusOne и раскомментируем set SCREEN_SIZE=iPhoneRetina
  5. в том же файле нужно дополнить строку “adl -screensize %SCREEN_SIZE%…” дописав в конец “-extdir lib/
  6. скопируйте файл ANE в папку lib в проекте
  7. в IDE справа найдите в дереве каталогов данный файл, нажмите на нем правой кнопкой мыши и выберите “Add To Library
  8. еще раз нажмите правой кнопкой мыши и выберите “Options…
  9. в окошке опций выберите пункт “External library“, нажмите OK
  10. в папке bat меняем файл Packager.bat – нужно дополнить строку “call adt -package…” дописав в конец “-extdir lib/
  11. в application.xml в конце второй строки меняем цифры, чтобы было 3.3
  12. в том же файле нужно добавить блок:

После всех этих манипуляций вы должны прочитать раздел 6.1.3. Initializing this SDK for AIR® and Implementing Termination Code из Developer’s Guide. В ней вы узнаете, что нужно настроить “песочницу” (Sandbox в профайле GREE Developer Center), завести тестовое приложение и тестового пользователя, получить секретные ключи. Там же будет и простой пример приложения – на нем вы можете проверить правильность ваших действий. Так что скопируйте код, подправьте его (пропишите нужное название класса и секретные ключи), нажмите F8 во FlashDevelop, чтобы собрать SWF, потом F5, чтобы собрать тестовый ipa. Так же можно собрать ipa через запуск PackageApp.bat в корне проекта.

При компиляции появится много варнингов – это нормально. Если компиляция прошла, и в папке dist появился билд, то можно считать, что дела у вас идут хорошо.

ВНИМАНИЕ: Если у вас нет доступак MacOS ни в каком виде, то можете пропустить следующий абзац и использовать не зашифрованные ключи с помощью метода GreePlatform.initializeWithUnecryptedConsumerKeyAndSecret вместо GreePlatform.initialize. Нужно будет только убрать последний параметр и вставить не зашифрованные ключи. Для тестов этого хватит, но в будущем нужно будет подумать о шифровании.

Чтобы узнать про шифрование ключей снова заглядываем в Developer’s Guide, а именно в разделы 6.3. Encrypting Consumer key/secret и 6.4. Generating encrypted Consumer Key and Consumer Secret. При создании тестового приложения мы получаем ID и два секретных ключа. Нам нужно зашифровать их. Для этого GREE предоставляет утилиту GreeConsumerProtectCLI, но она работает только под Mac OS – вот зачем нам нужна была консоль. Пока нет версии под Windows придется шифровать ключи в консоли под Mac OS. В Developer’s Guide в разделе 6.4.1. Using the Encryption Tool хорошо описано как работает данная утилита. В консоли её нужно запускать с параметрами “-v –encrypt“, потом подставить строку-ключ и строку, которую хотим зашифровать.

Код тестовое приложения:

Вместо NNNN вы должны вставить свои данные, зашифрованные ключи. Строку-ключ, которой шифровали секретные ключи приложения нужно указать последним параметром функции initialize.

Скачать весь тестовый проект целиком (4.4Mb).

Похожие записи:

Leave a Reply

Your email address will not be published. Please enter your name, email and a comment.

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">