• 0
Andrey Yakovlev

Запуск приложения в iOS Simulator

Вопросы

Здравствуйте. Такая проблема:

В наличии есть Windows 10 с RAD Studio 10.2.3 Tokio и RAD Studio 10.3 Rio (на выбор), MAC с установленными xCode 9.2, 9.4, 10.0 и 10.1, PAServer 19/20

При попытке запустить тестовое приложение из Delphi в iOS Simulator 11.2 сам симулятор на MAC как-будто бы запускается, Delphi через некоторое время рапортует о том, что "все запущено - сходи на свой MAC и посмотри на результат", но по факту ничего не происходит. Приложение не появляется в симуляторе. Более того, симулятор после своего запуска не показывает окно с телефоном выбранной модели. Пробовал уже кажется все мыслимые сочетания Delphi, PAServer, CommandLineTools и т.п. Ничего не помогает.

Кто-нибудь может помочь разобраться? Какая дополнительная информация нужна для анализа ситуации? Готов предоставить.

Спасибо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

12 ответов на этот вопрос

  • 0

CyberStormcпасибо за ответ. Только из обсуждения в той ветке я для себя понял, что по крайней мере для iPhone5 запуститься должно. А у меня всегда один эффект: у симулятора нет окна телефона, какое у него появляется, если запустить приложение из xCode, а есть только значок в панели задач Мака и главное меню в верхней части рабочего стола, у которого 90% пунктов неактивны. Вам не довелось это проверить?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0
1 час назад, Andrey Yakovlev сказал:

Только из обсуждения в той ветке я для себя понял, что по крайней мере для iPhone5 запуститься должно.

Только если XCode старый, симулятор в котором поддерживает 32 бита. Правда при этом нужно проверить, что сама Rad Studio сможет с ним работать. Возможны нюансы.

1 час назад, Andrey Yakovlev сказал:

А у меня всегда один эффект: у симулятора нет окна телефона, какое у него появляется, если запустить приложение из xCode, а есть только значок в панели задач Мака и главное меню в верхней части рабочего стола, у которого 90% пунктов неактивны.

Если у вас стоит несколько XCode, то я бы убедился, что грузится симулятор от текущей версии XCode. Есть утилита для переключения в маке текущей версии xcode: xcode-select

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0
21 минуту назад, Brovin Yaroslav сказал:

Только если XCode старый, симулятор в котором поддерживает 32 бита. Правда при этом нужно проверить, что сама Rad Studio сможет с ним работать. Возможны нюансы.

А какой xCode может считаться достаточно старым для этого? Самая младшая версия сейчас 9.2.

21 минуту назад, Brovin Yaroslav сказал:

Если у вас стоит несколько XCode, то я бы убедился, что грузится симулятор от текущей версии XCode. Есть утилита для переключения в маке текущей версии xcode: xcode-select

Я полагаю, что аналог этой утилиты - выбор версии Command Line Tools на закладке Locations окна Preferences. Впрочем, я проверил. По ключу "-p" эта утилита указывает как раз на xCode 9.2, что соответствует выбору в окне с настройками.

Предлагаете поставить еще более ранний xCode?

А если отбросить мысли о симуляторе и думать про запуск на телефоне, есть ли какой-то легальный способ перенести сертификат с одного Мак на другой? Дело в том, что developer-сертификат есть в наличии, но куплен на другого разработчика и используется на другой машине.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0
6 минут назад, Andrey Yakovlev сказал:

А если отбросить мысли о симуляторе и думать про запуск на телефоне, есть ли какой-то легальный способ перенести сертификат с одного Мак на другой? Дело в том, что developer-сертификат есть в наличии, но куплен на другого разработчика и используется на другой машине.

Надо просто выполнить экспорт сертификата разработчика с закрытым ключем и перенести его на другую машину.

Возможно еще потребуется логин и пароль от учетки эпла.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0
12 минут назад, Brovin Yaroslav сказал:

Надо просто выполнить экспорт сертификата разработчика с закрытым ключем и перенести его на другую машину.

Это было проделано. Логин и пароль имеются. Запуск напрямую на телефон приводит к ситуации "Cannot connect to the MAC". Тут вопрос шире: есть Мак и я что-то устанавливаю на него, пользуясь своей личной учеткой. Для покупки сертификата был создан отдельный AppleID, со своими логином и паролем. Вот где они должны фигурировать? Я где-то прочитал, что и paserver нужно "учить", каким аккаунтом пользоваться.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

В настройках проекта, есть вкладка Provisioning и там укажите, какой провижен и какой сертификат использовать.

2019-01-15_16-40-04.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

Пробовал я эту закладку. Обычно мне сообщают следующее:

"No provisioning profile found for the selected build configuration and the selected device "DeviceName". Please log in to the iOS Developer Program to download the provisioning profile for the selected build configuration and the selected device."

Что хотят сказать, можете разъяснить? Судя по тому, что без запущенного PAServer сообщение другое, Delphi узнает эту информацию через него. Не могу понять, как всем заинтересованным сообщить, что сертификат разработчика у меня есть.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

Я смутно припоминаю что где-то в аккаунте разработчика (у Эппла) нужно прописать серийники телефонов/планшетов на которых вы хотите отлаживать приложения.
Без этого показывается тоже сообщение "Cannot connect to Mac".

Вот здесь: https://developer.apple.com/account/ios/device/

Также просмотрите здесь https://developer.apple.com/account/ios/profile/ все ли профайлы/сертификаты вы имеете.
Также, после этого на новом маке вам нужно открыть xCode -> Preferences -> Accounts и загрузить эти профайлы/сертификаты на макбук. 

Изменено пользователем Barbanel
Новая инфо

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

Barbanelвидел описание вашего опыта в другой ветке форума. Я уже:

- зашел в iCloud под AppleID, который мы завели для developer-аккаунта

- удалил все сертификаты из связки ключей, которые хотя бы как-то указывали на другие мои аккаунты и импортировал в xCode - Pref - Accounts тот самый, который у нас developer

- сходил в developer.apple.com и завел там сначала AppID, а затем provisioning profile, для которого явно указал свой iPhone

- загрузил и импортировал этот profile в xCode, точно вижу, что он про мой телефон знает

- переключил PAServer в verbose режим и вижу, что он пытается сканировать имеющиеся сертификаты и видит даже больше, чем один и все они, так или иначе, имеют отношение к нашему developer-аккаунту

- открыл тестовое приложение в Delphi Rio (и ее уже поставил, хоть это и долго), прописал правильно bundle identifier в VersionInfo

и... все равно, Provisioning упорно ничего не видит.

Извиняюсь за излишне подробное описание. У нас есть первый ноут, на котором приобретался сертификат и там все работает. Но я не понимаю, в чем разница, если сам сертификат прошел процедуру импорта/экспорта, из Иксов все на телефон встает как надо. Тупик, который все больше склоняет к написанию софта прямо в xCode, чего не сильно хотелось бы, так как есть еще потребность в Андройде.

Изменено пользователем Andrey Yakovlev

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

Дополнение. Забегая вперед, скажу, что все заработало, но хотелось бы подтвердить или опровергнуть свои догадки. Ноутбук, на котором изначально все работало, имеет High Sierra в качестве ОС. Это последняя яблочная ось, которая без вопросов переваривает 32-битные приложения. МакПро, на который все переносилось и проблемы которого здесь описывались, имеет уже последнюю Mojave. Вчера взял третий чистый МакБук Про (описание выглядит, как будто тут склад продукции Аппл :)), который по случаю также все еще имел High Sierra, поставил xCode 9.4.1 и 9.2 (его выбрал в качестве Command Line Tools), создал пустой проект, подключил к нему имеющийся developer-акк, поставил PAServer20 и в Delphi Rio стала нормально появляться информация в закладке Provisioning. Как следствие, и приложение нормально долетело до телефона.

Вопрос в следующем: у кого-нибудь есть успешный опыт эксплуатации такой цепочки в ОС Mojave 64 бит? В этом проблема у нас была и нужно ждать PAServer 64? Просто догадки, ибо никакого другого объяснения случившемуся у меня нет, все выглядит, как удачное стечение обстоятельств.

Всем спасибо за ответы.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу