Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Регистрация Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Блоги > Котяра

Рейтинг: 5.00. Голосов: 3.

Страх и ненависть в Нью-Дели или сборка мультипака для arm7 и x86 c Adobe AIR 14 в FB

Запись от Котяра размещена 16.06.2014 в 18:29
Обновил(-а) Котяра 18.06.2014 в 14:18

..У нас был готовый проект, который компилировался только под arm7, 2 набора разных процессоров - arm7 и x86, over 9000 различных устройств, тестовый планшет Samsung Galaxy Tab 3 10.1 на Intel Atom, смартфон HTC One S на arm7, а также текила, ром, ящик пива, Flash Builder 4.7 и бетка AIR 14. Не то что бы это был необходимый запас для разработки. Но если начал собирать различные apk, становится трудно остановиться. Единственное что вызывало у меня опасение - это AIR 14. Нет ничего более беспомощного, безответственного и испорченного, чем адобовские поделки в бете. Я знал, что рано или поздно мы перейдем и на эту дрянь.

Название: 9.jpg
Просмотров: 1282

Размер: 19.8 Кб
  • Шаг 1. Скачиваем SDK
    Скачиваем air 14 здесь.
    Читаем доки.

  • Шаг 2. Устанавливаем AIR14 для FB
    Ставим SDK в папку C:\Program Files\Adobe\Adobe Flash Builder 4.7 (64 Bit)\eclipse\plugins\com.adobe.flash.compiler_4.7.x.xxxxxx\AIRSDK
    Смотрим существует ли в AIRSDK файл \frameworks\libs\player\14.0\playerglobal.swc
    В ранних бетках он отсутствовал.
    Если нету - качаем здесь, Flash Player 14 Beta Global SWC, переименовываем в playerglobal.swc, создаём в \frameworks\libs\player\ папку 14.0 и копируем туда.
    Это необходимо, чтобы обычные пректы (не air и не flex) нормально собирались в FB

  • Шаг 3. Шаманство как оно есть
    Если попробовать сходу собрать существующий проект (например, нормально работающий на air13) без нового аттрибута -arch, то единственное, что необходимо сделать - это прописать в манифесте версию айра 14.0
    и все работает.
    Казалось бы - вот он счастье...
    Но c -arch не всё так просто.

    Читаем док (или догадываемся) и прописываем

    Название: 1.jpg
Просмотров: 1267

Размер: 4.5 Кб

    Пытаемся собирать и натыкаемся на баги:

    Adt ругается на то, что не может писать в файл.

    Нажмите на изображение для увеличения
Название: 10.jpg
Просмотров: 297
Размер:	31.5 Кб
ID:	433

    Ок. Делаем пустым поле export
    Adt ругается на то, что пути к ресурсам неправильные.
    Пробуем прописывать другие пути или даже для теста убираем все ресурсы - просто вылетает без объяснений.


    Методом научного тыка я таки победил злой гений индийской разработки.

    ИНСТРУКЦИЯ по СБОРКЕ
    1. В настройках проекта прописываем в качестве выходной папки bin-release-temp

      Название: 2.jpg
Просмотров: 1285

Размер: 34.5 Кб

    2. Если этой папки нет - создаём её.

    3. Копируем туда ресурсы, которые нужно упаковать вместе с приложением (например, иконки)

    4. Во время сборки не забываем ставить галочку keep bin-release-temp.

      Название: 3.jpg
Просмотров: 1254

Размер: 21.7 Кб

      Я постоянно забываю, после сборки эта папка удаляется и я, вспоминая матерей адобовских разрабов, заново собираю проект, т.к. итоговый apk лежал там и успешно удалился вместе с темповой папкой, никуда не скопировавшись.

    5. Поле export оставляем пустым

      Название: 4.jpg
Просмотров: 1197

Размер: 3.0 Кб

    6. Удаляем галочки у лишних файлов в диалоге упаковки

      Название: 5.jpg
Просмотров: 1215

Размер: 12.3 Кб

      и прописываем полные пути до ресурсов (тут ничего нового)

      Название: 6.jpg
Просмотров: 1221

Размер: 26.4 Кб

    7. Собираем и молимся индийским богам.

    8. Забираем apk из bin-release-temp

    9. PROFIT!!!

  • Шаг 4. ANE
    Про ане ничего не скажу, кроме того, что их нужно пересобирать.
    Этим занимались другие люди, но проблем не возникло. Даже если у вас нет исходников, распакуйте ane (это обычный zip) исправьте манифест, скопируйте нужный jar из Android-ARM в ANDROID-x86 и соберите заново с помощью adt
    В результате ane должно выглядеть примерно так:
    Название: 7.jpg
Просмотров: 1220

Размер: 26.6 Кб

  • Шаг 5. Мультипак
    Для сборки мултипака гугл рекомендует оставлять android:versionName общим, а android:versionCode менять по определённым правилам.
    Название: 8.jpg
Просмотров: 1238

Размер: 14.8 Кб
    для air манифеста я сделал так
    для ARM7
    Код AS3:
    	<versionNumber>21.9.0</versionNumber>
    	<versionLabel>1.9.0</versionLabel>
    для x86
    Код AS3:
    	<versionNumber>61.9.0</versionNumber>
    	<versionLabel>1.9.0</versionLabel>
    собираем 2 разных apk и загружаем в гуглоплей в расширенном режиме.

  • Резюме
    Хотя описанный процесс и выглядит довольно простым, на поиск этих обходных путей я потратил очень много времени.
    Надеюсь моя заметка поможет избежать этого.

  • PS Игра стоит свеч, т.к. на тестовом Samsung Galaxy Tab 3 10.1 приложение стало гораздо шустрее.

  • PPS Покупайте наших слонов!

    https://play.google.com/store/apps/d...games.riotzone

  • UPD: Обещанный список топ устройств
    Цитата:
    Samsung Galaxy Tab2 10.1 1467 4.48%
    Samsung Galaxy Tab2 7.0 3.36%
    Samsung Galaxy S3 3.34%
    Samsung Galaxy Note 10.1 3.00%
    Samsung Galaxy Tab3 10.1 2.00%
    Samsung Galaxy S4 1.90%
    SK Telesys ITP-R208W 1.84%
    Google Nexus 7 1.74% (?) тут есть как x86, так и арм7
    Samsung Galaxy Tab3 7.0 1.62%
    TCT Mobile Limited 528 1.61%
    Samsung Galaxy Tab3 8.0 1.52%
    Samsung Galaxy S2 1.30%
    Samsung Galaxy S3 Mini 1.05%
    Lenovo Mobile IdeaTab S6000 1.01%
    Список всех x86 устройств доступных в GooglePlay на данный момент
    Цитата:
    ACER
    A1 - 830– ducati
    B1 - 730HD– vespa
    Liquid C1– I1
    Iconia One 7– vespatn

    ASUS
    ZenFone 4– ASUS_T00I
    ZenFone 4– ASUS_T00Q
    ASUS PadFone mini– ASUS_T00E
    ASUS Fonepad 7 LTE– K00Y
    ASUS MeMo Pad ME302C– ME302C
    Asus MeMO Pad 7– K017
    Asus Fonepad 7– K00E
    ZenFone 5– ASUS_T00F
    Asus Fonepad Note 6– K00G
    ASUS Transformer Pad– K010_1
    ASUS MeMO Pad 7– K013_1
    ASUS Fonepad 7– K00Z
    ASUS Transformer Pad– K010
    ZenFone 5– ASUS_T00J
    ZenFone 6– ASUS_T00G
    ASUS MeMO Pad 7– K013
    Asus fonepad 7– K012
    ASUS MeMO Pad 8– K011

    BYD
    PT452E– PT452E
    SI4301– SI4301
    Prestigio PAP5430– PAP5430
    Zippers– Zippers
    X910– X910
    WISKY W032I– W032I

    DELL
    Venue 7– thunderbird
    Venue 8– yellowtail

    ECS
    Any 303– TR10CD2_2
    TA80CA1– TA80CA1
    TR10CD3– TR10CD3_1
    TR10CD1– TR10CD1_2
    Any 303– TR10CD2_3
    TR10CD1– TR10CD1_5
    TR10CD3– TR10CD3_2
    TR10CS1– TR10CS1_8
    TR10CD1_P– TR10CD1
    TR10CD1– TR10CD1_4
    TR10CS1– TR10CS1_7

    FOXCONN INTERNATIONAL HOLDINGS LIMITED
    XOLO– AZ510
    XOLO_X1000– SI1

    FUHU
    nabi DreamTab HD8 Tablet– DMTAB

    GIGABYTE
    PMT7787_3G– PMT7787_3G

    GOOGLE
    Nexus 7– grouper

    INTEL
    AQ710A– Salitpa
    SP - A20i– SP - A20i
    AZ210A– noonhill
    Xolo_X900– blackbay
    Orange avec Intel Inside– AZ210B
    Orange San Diego– AZ210A

    LENOVO MOBILE
    Lenovo K800– mfld_pr2
    IdeaTab K2110A - F– K2110A - F
    K900– K900
    K800– K800
    K900– K900_ROW

    MOTOROLA
    DROID RAZR i– smi

    OPENPEAK
    CIUS - 7– CIUS - 7
    cius– cius
    CIUS - 7 - AT– CIUS - 7 - AT

    SK TELESYS
    Si01BE– Si01BE
    Falcon– falcon
    Bic camera– Si01BB

    SAMSUNG
    Galaxy Tab3 10.1– santos103g
    Galaxy Tab3 10.1– santos10lte
    Galaxy Tab3 10.1– santos10wifi

    VESTEL
    VP100 + – ephesus

    XIAOMI
    MI 2A– taurus

    ZTE
    ZTE V975– redhookbay
    p89mini_e2w6 vbox86tp

Да, статистика показывает, что реальных устройств всего около 3%, но все эти устройства новые и их будет всё больше.
Размещено в игродел
Комментарии 17 Отправить другу ссылку на эту запись
Всего комментариев 17

Комментарии

Старый 16.06.2014 18:43 Psycho Tiger вне форума
Psycho Tiger
 
Аватар для Psycho Tiger
А если не FB каким богам молиться?
Старый 17.06.2014 11:16 Котяра вне форума
Котяра
 
Аватар для Котяра
Богам Анта)
Сегодня, кстати, попробую запилить антбилд - если всё будет ок - дополню пост ант скриптом.
Старый 17.06.2014 18:55 Astraport вне форума
Astraport
 
Аватар для Astraport
Цитата:
over 9000 различных устройств
Не понял. Откуда столько?

На iOS будет?
Старый 17.06.2014 19:00 Котяра вне форума
Котяра
 
Аватар для Котяра
Ну это какбы мем)
на иос будет - но позже, там надо выкатываться отполироваными - на андроиде пока полируемся)
Старый 17.06.2014 20:07 Astraport вне форума
Astraport
 
Аватар для Astraport
Я вот так и не пойму: уже нужно ли подобным образом пересобирать свои приложения под х86 или подождать пока все устаканится и зарелизится? Каков сейчас реальный процент таких устройств у юзеров? Если даже 1-2% то не стоит напрягаться.
Старый 17.06.2014 20:45 dimarik вне форума
dimarik
 
Аватар для dimarik
Ценная инфа об AIR 14. А мы запилили build.xml с svn up, копированием контента с сервера, модификацией дескриптора app.xml, включая версию и ревизию приложения, копированием собранного билда обратно на сервер для раздачи тестерам и на сетевой диск руководителя проекта. И это все отдельно для теста, релиза и боя для андроид и iOS. Теперь собираем билды на отдельном девелоперском ноуте одним движением пальца.
Старый 17.06.2014 21:12 Котяра вне форума
Котяра
 
Аватар для Котяра
Цитата:
Я вот так и не пойму: уже нужно ли подобным образом пересобирать свои приложения под х86 или подождать пока все устаканится и зарелизится? Каков сейчас реальный процент таких устройств у юзеров? Если даже 1-2% то не стоит напрягаться.
Релиз уже вышел, но косяки остались те же. Сегодня проверил. Если собирать антом - проблем может и не быть. Косяк в связке с FlashBuilder.
По поводу процентов - по нашей статистике Samsung Galaxy Tab 3 10.1 - 5% инсталов, не считая остальных. (всего около 70 новых девайсов - завтра вытащу список - добавлю в пост)
Просто мы закупили и раздали на призы игрокам как раз такие самсунги. И получилось некрасиво, что на них работает через палку. Я делал синтечские тесты - самсунг таб 3 10 в режиме эмуляции (т.е. в собраном для арм7 айре) проигрывает самсунгу 2 10 в 2 раза по фпсам. Операции чтения-записи вообще на порядок.
+ Мой тестовый планшет тоже самсунг таб 3 10.
2димарик, а за build.xml я к тебе зайду)
Старый 17.06.2014 21:17 Котяра вне форума
Котяра
 
Аватар для Котяра
А переходить на айр 14 придётся в любом случае из-за проблем с OpenSSL. Иначе гугл забанит.
Приходило такое письмо счастья?

Цитата:
One or more of your apps is running an outdated version of OpenSSL, which has multiple security vulnerabilities. You should update OpenSSL as soon as possible. For more information about the most recent security vulnerability in OpenSSL, please see http://www.openssl.org/news/secadv_20140605.txt.
Please note, while it's unclear whether these specific issues affect your application, applications with vulnerabilities that expose users to risk of compromise may be considered “dangerous products” and subject to removal from Google Play.
Regards,
Google Play Team
Старый 17.06.2014 21:17 Astraport вне форума
Astraport
 
Аватар для Astraport
Цитата:
по нашей статистике Samsung Galaxy Tab 3 10.1 - 5% инсталов
Как-то неестественно дофига. Ведь у вас ещё и телефоны.
Кстати, удивительно как вам удалось адаптировать игру перенасыщенную UI к телефонам.
Ну и с крэшами по случаю нехватки памяти на китайских телефонах, тоже смотрю все ОК, судя по высокому рейтингу.

Да, письмо приходило. Пока забил. А что AIR 14 проблему решает? Я давно собираю на последних бетах AIR 14 - все нормально.
Старый 17.06.2014 21:19 СлаваRa вне форума
СлаваRa
 
Аватар для СлаваRa
Цитата:
Теперь собираем билды на отдельном девелоперском ноуте одним движением пальца.
У нас этим занимается отдельная билд машина с поднятым TeamCity. Тесты сервера, клиента, сборка контента и заливка этого по нужным местам на автомате, до того что если тесты не проходят или, что-то не собирается, билдмашина разошлет на почты и в скайпы заинтересованным сообщения об этом)
Старый 17.06.2014 21:40 Котяра вне форума
Котяра
 
Аватар для Котяра
Цитата:
Как-то неестественно дофига. Ведь у вас ещё и телефоны.
Ну первоначально фильтр стоял только для планшетов, на которые, собственно в основном и рассчитано - вот и набралось. Для телефонов всё же мелковато, но игроки просили открыть фильтр маркета. Завтра сделаю новую стату - уточню.
Кроме самсунга есть еще асеры и леново и скоро выйдет новый нексус 7, который судя, по слухам и косвенным признакам тоже будет на х86.
Но на самом деле можно и не спешить. Работать оно и так будет, просто не оптимально.
Старый 17.06.2014 21:44 Котяра вне форума
Котяра
 
Аватар для Котяра
Цитата:
А что AIR 14 проблему решает?
Сегодня как раз разговор был с TheRabbit
По его инфе - будет минорный релиз 8 июля, но апдейты могут быть и раньше.
Цитата:
прикол в том, что в каждой следующей бете в течении последних 2х месяцев) они обновляли SSL
а его ломали и ломали
Обновил(-а) Котяра 18.06.2014 в 01:16
Старый 18.06.2014 14:17 Котяра вне форума
Котяра
 
Аватар для Котяра
Добавил статистику в пост
Старый 18.06.2014 20:14 illuzor вне форума
illuzor
 
Аватар для illuzor
Цитата:
Google Nexus 7 1.74% (?) тут есть как x86, так и арм7
Нет. Версия 2012 на Tegra 3, версия 2013 - на snapdragon s4 pro.
Старый 18.06.2014 20:16 Psycho Tiger вне форума
Psycho Tiger
 
Аватар для Psycho Tiger
Котяра, а можно какой-нибудь бенчмарк – насколько стало шустрее? Просто в цифрах, примерно-субъективно.
Старый 18.06.2014 20:26 Котяра вне форума
Котяра
 
Аватар для Котяра
Я запускал старлинговский бенчмарк на таб2 и таб3.
Практически везде фпс проседал в 2 раза.
Тест на одном и том же устройстве с ключом -arch x86 и без него - не проводил. Попробую что-нибудь соорудить - отпишусь. Но чисто визуально, наше приложение на таб3 тормозило жутко в анимациях, лагало на тачах, на загрузке, а после перекомпиляции стало всё ок.
Обновил(-а) Котяра 18.06.2014 в 20:36
Старый 18.06.2014 20:34 Котяра вне форума
Котяра
 
Аватар для Котяра
Цитата:
Нет. Версия 2012 на Tegra 3, версия 2013 - на snapdragon s4 pro.
Но почем-то в списках поддерживаемых устройств для сборки с х86 в маркете гугла присутствует
Nexus 7– grouper
+ попадались статьи-анонсы какие-то.
http://www.4tablet-pc.net/news/4546-...bay-trail.html
http://bgr.com/2014/03/10/nexus-8-sp...bit-processor/
http://www.pocket-lint.com/news/1194...ntel-processor
Но я не особо спорю. Мопед не мой.
 

 


Часовой пояс GMT +4, время: 02:14.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2019, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.