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

Вернуться   Форум Flasher.ru > Flash > Flash Приложения: AIR, Zinc и тд.

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 22.04.2016, 14:38
mikhailk вне форума Посмотреть профиль Отправить личное сообщение для mikhailk Найти все сообщения от mikhailk
  № 1  
Ответить с цитированием
mikhailk
 
Аватар для mikhailk

Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
По умолчанию Error 2032 в зависимости от версии SDK и версии смартфона/iOS

Одно и тоже AIR-приложение компилирую двумя AIR SDK и запускаю на двух смартфонах.
В начале работы приложение лезет на сервер по http самым банальным образом:

Код AS3:
var loader : URLLoader = new URLLoader();
var request : URLRequest = new URLRequest( GameConfig.server );
request.method = URLRequestMethod.POST;
 
var vars : URLVariables = new URLVariables();
vars['userData'] = userData;
request.data = vars;
loader.addEventListener( Event.COMPLETE, onPostComplete );
loader.addEventListener( IOErrorEvent.IO_ERROR, ioErrorHandler );
loader.addEventListener( SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler );
 
loader.load( request );
Проверяю на двух смартфонах: iPhone 5s/iOS 8.4 и iPhone 6 Plus/iOS 9.3.1.

Сборка с SDK 16 работает одинаково на обоих смартфонах (сервер отвечает, данные приходят).
Сборка с SDK 21 работает штатно на iPhone 5s/iOS 8.4.
На смартфоне iPhone 6 Plus/iOS 9.3.1 обращение к серверу вызывает ошибку 2032.

В чем проблема?

Может быть, требуется какая-то настройка для более старшей iOS и более старшей SDK в Application descriptor'е?

Вариант остаться на SDK 16 мне не подходит, поскольку объективно надо переходить на AIR SDK 21.

Старый 22.04.2016, 15:02
illuzor вне форума Посмотреть профиль Отправить личное сообщение для illuzor Найти все сообщения от illuzor
  № 2  
Ответить с цитированием
illuzor
 
Аватар для illuzor

Регистрация: Dec 2010
Адрес: Ярославль
Сообщений: 1,255
Нужно прописать настройки.
В документации всё написано.

Старый 22.04.2016, 15:28
mikhailk вне форума Посмотреть профиль Отправить личное сообщение для mikhailk Найти все сообщения от mikhailk
  № 3  
Ответить с цитированием
mikhailk
 
Аватар для mikhailk

Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
Цитата:
В документации всё написано.
Ха. Вот тот случай, когда лучше пользоваться доками на английском языке.

В русском варианте маленький абзац, который и в глаза-то не бросается:

Цитата:
Примечание. Компания Apple ввела в ОС iOS9 протокол защиты App Transport Security, который не позволяет устанавливать незащищенные подключения между приложением и веб-службами. По этой причине все подключения с незащищенных веб-сайтов, установленные с помощью Loader и URLLoader не смогут работать из-за протокола App Transport Security. Укажите исключения в поведении по умолчанию, добавляя ключи в файл Info.plist приложения. Чтобы отключить функцию полностью, можно добавить в файл Info.plist следующие строки, чтобы все работало как раньше.
И совсем другое дело в доках на англ.языке. ))

Однако, это не очень объясняет, почему приложение, скомпилированное с SDK 16 прекрасно работает и без всего этого. Но, собственно, ладно.

Добавлено через 36 минут
Да, отключение помогло.

Код:
            <key>NSAppTransportSecurity</key>
            <dict>
             <key>NSAllowsArbitraryLoads</key>
             <true/>
            </dict>


Последний раз редактировалось mikhailk; 22.04.2016 в 16:05.
Старый 22.04.2016, 17:24
illuzor вне форума Посмотреть профиль Отправить личное сообщение для illuzor Найти все сообщения от illuzor
  № 4  
Ответить с цитированием
illuzor
 
Аватар для illuzor

Регистрация: Dec 2010
Адрес: Ярославль
Сообщений: 1,255
Цитата:
Однако, это не очень объясняет, почему приложение, скомпилированное с SDK 16 прекрасно работает и без всего этого.
Очень даже объясняет. С версии air 21 используется более новая версия ios sdk.
А в версии 16, соответственно, старая, которая ничего не знает об App Transport Security

Старый 22.04.2016, 17:46
caseyryan вне форума Посмотреть профиль Отправить личное сообщение для caseyryan Найти все сообщения от caseyryan
  № 5  
Ответить с цитированием
caseyryan
 
Аватар для caseyryan

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
Цитата:
Сообщение от mikhailk Посмотреть сообщение
Ха. Вот тот случай, когда лучше пользоваться доками на английском языке.

В русском варианте маленький абзац, который и в глаза-то не бросается:

И совсем другое дело в доках на англ.языке. ))
Ты прикалываешься что ли?
Специально зашел в оба варианта и глянул. Не увидел никакой разницы. В английском варианте, в силу того что сами языковые конструкции в английском короче, абзац еще меньше, и так же совершенно не бросается в глаза
Миниатюры
Нажмите на изображение для увеличения
Название: Screenshot_3.jpg
Просмотров: 598
Размер:	279.3 Кб
ID:	32191   Нажмите на изображение для увеличения
Название: Screenshot_4.jpg
Просмотров: 577
Размер:	248.3 Кб
ID:	32192  
__________________
Ко мне можно и нужно обращаться на ты)

Старый 25.04.2016, 15:28
mikhailk вне форума Посмотреть профиль Отправить личное сообщение для mikhailk Найти все сообщения от mikhailk
  № 6  
Ответить с цитированием
mikhailk
 
Аватар для mikhailk

Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
Цитата:
Специально зашел в оба варианта и глянул. Не увидел никакой разницы
А она есть.
Русскоязычный вариант:

Примечание. Компания Apple ввела в ОС iOS9 протокол защиты App Transport Security, который не позволяет устанавливать незащищенные подключения между приложением и веб-службами. По этой причине все подключения с незащищенных веб-сайтов, установленные с помощью Loader и URLLoader не смогут работать из-за протокола App Transport Security. Укажите исключения в поведении по умолчанию, добавляя ключи в файл Info.plist приложения. Чтобы отключить функцию полностью, можно добавить в файл Info.plist следующие строки, чтобы все работало как раньше.


Англоязычный вариант:

Note: App Transport Security is being introduced from Apple in iOS9, which doesn’t allow unsecure connections between App and Web services. Due to this change all the connections which are made to Unsecure web sites via Loader, URLLoader will discontinue and not work due to App Transport Security. Please specify exceptions to the default behaviour by adding keys to Info.plist in our app.

To turn off the feature completely you can add following in your Info.plist and it will work as before.
<key>NSAppTransportSecurity</key> <dict> <key>NSAllowsArbitraryLoads</key><true/> </dict>

Please specify exceptions to the default behavior by adding keys to InfoAdditions tag of application descriptor of your app. <iPhone> <InfoAdditions> <![CDATA[ <key>NSAppTransportSecurity</key> <dict> <key>NSExceptionDomains</key> <dict> <key>www.example.com</key> <dict> <!--Include to allow subdomains--> <key>NSIncludesSubdomains</key> <true/> <!--Include to allow HTTP requests--> <key>NSTemporaryExceptionAllowsInsecureHTTPLoads</key> <true/> <!--Include to specify minimum TLS version--> <key>NSTemporaryExceptionMinimumTLSVersion</key> <string>TLSv1.1</string> </dict> </dict> </dict> ]]> </InfoAdditions> </iPhone>

Старый 25.04.2016, 18:23
caseyryan вне форума Посмотреть профиль Отправить личное сообщение для caseyryan Найти все сообщения от caseyryan
  № 7  
Ответить с цитированием
caseyryan
 
Аватар для caseyryan

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
Точно) Это я уже не читал. Наверное русский вариант не вовремя обновляют.
Собственно, давно известно, что лучше всю инфу искать на английском. Гораздо больше вероятность найти ответ
__________________
Ко мне можно и нужно обращаться на ты)

Создать новую тему Ответ Часовой пояс GMT +4, время: 22:13.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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