Перейти к содержанию
Fire Monkey от А до Я

Ошибки и косяки Delphi XE10 Seattle и xCode 7


alexbirukov

Рекомендуемые сообщения

И так, пока русскоязычная и англоязычная части интернета молчат по поводу работы в новой Delphi XE10 Seattle в связке с xCode 7, а компании представители описывают, какое замечательное вышло обновление, пользователи столкнулись с проблемой, что приложения, сделанные на XE10 Seattle, xCode 7 + SDK9, не запускаются на предыдущих платформах.

Не совсем понятно, почему в упомянутых сегментах интернета нет совершенно никакой информации по данному поводу. Опять впереди планеты все Китай.

Пользователь блога подробно описывает конфигурацию, на которой он тестировал запуск приложения и описание проблемы. Несколько реальных устройств на разных прошивках, разные версии ПО и пр.

Коротко о главном. Если вы хотите, как можно скорей перейти на новую Delphi XE10 Seattle с целью писать свежие приложения\обновления для iOS, спешу вас разочаровать. Ваши программы перестанут работать на предыдущих версиях iOS. Статистика испытаний такова, что приложения собранные на XE10 Seattle, xCode 7 + SDK9 будут работать только на устройствах под управлением iOS9.

Вторая проблема, состоит в том, что недавнего времени AppStore при проверке приложений стала проверять их именно на iOS 9, а приложения собранные на XE8.1 такую проверку не проходят, так как зависают на стартовой заставке приложения и как следствие их отклоняют. Вот так то. Прошла уже целая неделя, а интернет по данному поводу ничего сказать нам особо не может.

На днях появилась статья от Сарины Дю Понт, о том, как всё же запустить приложение сделанные в XE8.1 на iOS9.

В результате изысканий Китайских друзей, получаем на данный момент такую картину:

XE8 + iOS 6 = полёт нормальный
XE8 + iOS 7 = полёт нормальный
XE8 + iOS 8 = полёт нормальный
XE8 + iOS 9 = зависание на экране заставки (если не воспользоваться советом Сарины)

XE10 + iOS 6 = приложение вылетает
XE10 + iOS 7 = приложение вылетает
XE10 + iOS 8 = приложение вылетает
XE10 + iOS 9 = полёт нормальный

Таким образом в XE10 Seattle и xCode 7 можно получить на данный момент только приложение, работающее на iOS9.

Ждём Delphi XE10 Seattle Update 1.

P.S. А в на Android в Delphi XE10 Seattle приложение с компонентами для отправки Push не запускается в режиме Release — Application Store. Что тоже, очень и очень печально.

Ссылка на комментарий

XE10 + iOS 6 = полёт нормальный
XE10 + iOS 7 = полёт нормальный
XE10 + iOS 8 = полёт нормальный
XE10 + iOS 9 = полёт нормальный

xCode 6

приложение успешно прошло проверку в app store и опубликовано единственный момент они уже не принимаю совместимость ios 6 требуют указывать минимальную версию 7

Ссылка на комментарий

XE10 + iOS 8 = полёт нормальный

XE10 + iOS 9 = полёт нормальный

xCode 7

Странно.

XE10 + iOS8 (iPhone 4S) - пустое приложение закрывается после заставки.

XE10 + iOS9 (Эмулятор) - запускается без проблем.

xCode 7.

 

При этом приложение собранное в XE8.1 + xCode 6.4 быль отклонено, зависло на заставке на iOS9.

Изменено пользователем alexbirukov
Ссылка на комментарий

в релизе вроде написано что версия ios 8.4 минимальная

В этом видимо и причина. На устройствах стоит 8.2 и 8.3. Приложения сделанные в XE10 + xCode 7 (SDK9) вылетают на них.

Ссылка на комментарий

ну так! все правильно!

а Вы "Ошибки", "Косяки"

что люди подумают?

Тогда не совсем понятно: 

XE10 + iOS 6 = полёт нормальный

XE10 + iOS 7 = полёт нормальный

XE10 + iOS 8 = полёт нормальный

 

Речь идёт об эмуляторе или проверке на реальных устройствах? Интересует запуск на реальных устройствах, поведение ПО.

 

А что люди подумают? Подумают сначала, хотят ли они изобретать костыли при переходе или нет :)

Ссылка на комментарий

 

ну так! все правильно!

а Вы "Ошибки", "Косяки"

что люди подумают?

Тогда не совсем понятно: 

XE10 + iOS 6 = полёт нормальный

XE10 + iOS 7 = полёт нормальный

XE10 + iOS 8 = полёт нормальный

 

Речь идёт об эмуляторе или проверке на реальных устройствах? Интересует запуск на реальных устройствах, поведение ПО.

 

А что люди подумают? Подумают сначала, хотят ли они изобретать костыли при переходе или нет :)

 

xCode 6 проверял на реальных устройствах

 

p/s изначально  обновил до xCode 7 версии

и были  ошибки после отката  на xCode 6 все заработало

Изменено пользователем master webs
Ссылка на комментарий

нет зависаний не заметил не смотря на то что  сразу  подгружаю информацию с сайта

Да у меня тоже есть приложение с подгрузкой. Но в свете последних экспериментов столкнулся с кучей проблем во всех этих обновлениях. В результате сейчас пытаюсь проверить работу связки XE8.1 + xCode 6.4 SDK 8.4 + исправления от Сарины. Предыдущую версию без исправлений отклонили.

 

Спасибо вам большое за подробные ответы.

Ссылка на комментарий

Да у меня тоже есть приложение с подгрузкой. Но в свете последних экспериментов столкнулся с кучей проблем во всех этих обновлениях. В результате сейчас пытаюсь проверить работу связки XE8.1 + xCode 6.4 SDK 8.4 + исправления от Сарины. Предыдущую версию без исправлений отклонили.

 

Спасибо вам большое за подробные ответы.

связка XE8.1 + xCode 6.4 SDK 8.4  у меня не прошла проверку в app store  по причине того что приложение не запустилось на ios 9 также была проблема  с http в ios 9 они рекомендуют использовать https протокол чтобы включить http  параметры надо задавать в ручную в файле info.plist

Ссылка на комментарий

 

Да у меня тоже есть приложение с подгрузкой. Но в свете последних экспериментов столкнулся с кучей проблем во всех этих обновлениях. В результате сейчас пытаюсь проверить работу связки XE8.1 + xCode 6.4 SDK 8.4 + исправления от Сарины. Предыдущую версию без исправлений отклонили.

 

Спасибо вам большое за подробные ответы.

связка XE8.1 + xCode 6.4 SDK 8.4  у меня не прошла проверку в app store  по причине того что приложение не запустилось на ios 9 также была проблема  с http в ios 9 они рекомендуют использовать https протокол чтобы включить http  параметры надо задавать в ручную в файле info.plist

 

Хмммм, а вот тут можно поподробнее. Просто у меня приложение при запуске тоже делает запрос именно по http, именно это приложение зависло на заставке. А что конкретно надо изменить в info.plist?

 

Связки XE10 + xCode 6.4 + SDK 8.4 это тоже касается?

Изменено пользователем alexbirukov
Ссылка на комментарий

 

 

А что люди подумают? Подумают сначала, хотят ли они изобретать костыли при переходе или нет :)

 

вы пробовали Swift, например, там такие косяки есть, что в RAD так...детский лепет!

к последнему swift надо прилагать толмут faq-ов на все случаи жизни.

 

это к теме переходить или не переходить... :))

Изменено пользователем wamaco
Ссылка на комментарий

 

 

 

А что люди подумают? Подумают сначала, хотят ли они изобретать костыли при переходе или нет :)

 

вы пробовали Swift, например, там такие косяки есть, что в RAD так...детский лепет!

к последнему swift надо прилагать толмут faq-ов на все случаи жизни.

 

это к теме переходить или не переходить... :))

 

Нет ну я конечно понимаю, всё познаётся в сравнении. Но я считаю с последними косяками Apple, с постоянными недоделками которые стали возникать + весь этот цирк с публикацией и пр. Просто я считаю, что коробочные версии продуктов должны быть более вылизанными. А не так, чтобы 5 часов коддинга и 120 часов шаманств с бубном наперевес. :)

Ссылка на комментарий

заходите в Project->Deployment

там ищите в колонке Remote Name info.plist отключаете строку и в замен нужно добавить новую  но только со своим файлом с таким же названием info.plist файл нужно скопировать  он у вас есть в папке iOSDevice64/Release/project.info.plist

я копировал в корень папки проекта  для удобства открываете в любом  текстовом редакторе   (Notepad++)

и после примерно 39 строки нужно добавить

 

38 <key>FMLocalNotificationPermission</key>
39        <string>true</string>
-------Добавить  код --------
41<key>NSAppTransportSecurity</key>
42<dict>
43
44  <key>NSAllowsArbitraryLoads</key>
45      <true/>
46</dict>
 
скажу сразу что директива для всех доменов если вы используете только 1 домен  то  правило будет другое
Изменено пользователем master webs
Ссылка на комментарий

 

заходите в Project->Deployment

там ищите в колонке Remote Name info.plist отключаете строку и в замен нужно добавить новую  но только со своим файлом с таким же названием info.plist файл нужно скопировать  он у вас есть в папке iOSDevice64/Release/project.info.plist

я копировал в корень папки проекта  для удобства открываете в любом  текстовом редакторе   (Notepad++)

и после примерно 39 строки нужно добавить

 

38 <key>FMLocalNotificationPermission</key>
39        <string>true</string>
-------Добавить  код --------
41<key>NSAppTransportSecurity</key>
42<dict>
43
44  <key>NSAllowsArbitraryLoads</key>
45      <true/>
46</dict>
 
скажу сразу что директива для всех доменов если вы используете только 1 домен  то  правило будет другое

 

Спасибо БОЛЬШОЕ! Буду пробовать.

Ссылка на комментарий

Хммм.

 

В общем сделал сборку XE10 + xCode 6 + SDK 8.4.

Приложения собираются, запускаются всё ОК.

 

Есть iPhone 4S (8.3) в режиме Debug приложение запускается в любой конфигурации.

Если запустить в режиме Release, после запуска приложение вылетает.

На эмуляторе всё работает ОК. 

На планшете iPad Mini 2 (8.2) тоже ОК.

 

Вопрос, чем может быть связано? И будет ли если опубликовать работать на iPhone 4S если работает на эмуляторе?

Ссылка на комментарий

 

Хммм.

 

В общем сделал сборку XE10 + xCode 6 + SDK 8.4.

Приложения собираются, запускаются всё ОК.

 

 

так в чем косяк то был? 

 

Да он и остался. Первый пост про связку XE10 + xCode 7 + SDK 9.

Каким чудом вам удалось запустить приложение из XE10 + xCode 7 + SDK 9 на устройстве с iOS8 мне постичь не удалось. :)

 

Поэтому понизил до XE10 + xCode 6 + SDK 8.4. Но опять же, не запускаются приложения на iPhone 4S в режиме Release.

 

В результате сейчас использую XE8.1 + xCode 6 + SDK 8.4 + изменённый FMX.Context.GLES.iOS.pas. Отправил приложение на проверку. Посмотрим, что скажут.

Изменено пользователем alexbirukov
Ссылка на комментарий
  • 2 недели спустя...

тоже столкнулся с проблемой публикации в app store.

недавно купил б/у ipad air за сущие копейки и лафа компилю на 64бит сразу ).

конфигурация: Yosemite 10.10.5 (VMware12), XCode 7.0.1, Ipad air 9.0.1, XE8upd1

в Tools\Options\Sdk manager слева iPhoneOS 9.0, но внимание - справа 8.4 sdk.

подтверждаю, что в топике ссылка помогла, сарина рулит, скопировал файл к себе

поправил Аллок и ...все заработало без зависонов на заставке.

респект топикстартеру !

Ссылка на комментарий

для Delphi 10 Seatlle вышел

30398_paserver_hotfix_for_delphi_c_builder_and_rad_studio_10_seattle

 

This PAServer Hotfix provides fixes for:
- building OS X 10.11 (El Capitan) applications with Delphi, C++Builder and RAD Studio 10 Seattle
- building iOS applications that run on iOS 7, iOS 8 and iOS 9 using the iOS 9 SDK with Delphi, C++Builder and RAD Studio 10 Seattle

Ссылка на комментарий

Для информации. Приложения собранные с исправлением от Сарины в xCode 6.4 + XE8.1 без проблем проходят в AppStore и публикуются. 
Ключ 
 
41<key>NSAppTransportSecurity</key>
42<dict>
43
44  <key>NSAllowsArbitraryLoads</key>
45      <true/>
46</dict>
 

Не использовал при публикации, хотя приложение и обращается к удалённому xml файлу. Публикация прошла успешно.

Ссылка на комментарий

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...