• 0
Barbanel

Подскажите необходимое железо для разработки под iOS

Вопросы

Доброго времени!

Есть разработанное под Андроид приложение. Начальство поставило задачу выложить это же приложение в Apple AppStore.

Было озвучено мнение что для этого необходимо купить Макбук или что-то аналогичное эппла.

У меня нет опыта работы с эппловскими девайсами и операционками вообще, в связи с чем вопрос:

- какое железо необходимо для нормальной и желательно комфортной разработки под iOS?

"Свежесть" железа играет роль (год выпуска или еще чего-нить)?

Всем спасибо!

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


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

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

  • 0

Ну я бы так сказал:

Возможно кто-то может вам просто написать под iOS приложение и это выйдет гораздо дешевле закупки железа + трудочасы на разработку, отладку, публикацию. Все зависит от целевого проекта и наличия потребности в его сопровождении и развитии.

А если по существу, то не обязательно наличие МАКа для разработки на FM для IOS. Можно поднять Виртуалку , а на нее накрутить OSX + XCode + PAServer и все, благо славные люди все публикуют в сети.

На опыте убедился что намного быстрее приложение собирается как раз-таки на ВМ чем на МАК железо.

 

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


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

Возможно кто-то может вам просто написать под iOS приложение и это выйдет гораздо дешевле закупки железа + трудочасы на разработку, отладку, публикацию. Все зависит от целевого проекта и наличия потребности в его сопровождении и развитии.

Боюсь что если я скажу такое шефу - меня уволят)))

Приложение уже написано на Дельфи и успешно работает на андроид-устройствах. Осталось скомпилировать его под iOS и протестировать. Задача стоит именно так: скомпилировать, отладить если необходимо, выложить в магазин Эппла.

Понятно что для тестов нужен айфон, купим, не проблема.

Слышали что нужно также и макбук. Шеф говорит купим, скажи только какой. А с ними дел никогда не доводилось иметь, и какой нужен - я хз))) Шеф говорит купим, грех говорить что не нужно)))

Вот, спрашиваю вашего совета)

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


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

Боюсь что если я скажу такое шефу - меня уволят)))

Приложение уже написано на Дельфи и успешно работает на андроид-устройствах. Осталось скомпилировать его под iOS и протестировать. Задача стоит именно так: скомпилировать, отладить если необходимо, выложить в магазин Эппла.

Понятно что для тестов нужен айфон, купим, не проблема.

Слышали что нужно также и макбук. Шеф говорит купим, скажи только какой. А с ними дел никогда не доводилось иметь, и какой нужен - я хз))) Шеф говорит купим, грех говорить что не нужно)))

Вот, спрашиваю вашего совета)

Относительно железки ничего не скажу. Т.к. особо не вошел мне в душу Мак. Поэтому на работе стоить Мак Про Эйр чисто для сборки под иОС. А дома юзаю все-таки Хакинтош.

Писанина под иОС отличается еще тем что иОС не Андроид , а Google не Apple а отсюда вытекают проблемы. А именно, с чем сталкивались мы.

1. Потребность приобрести аккаунт на яблоке 100$

2. Через Firebase пуши с ходу не получилось поднять, пришлось пошуршать не мало страниц в сети.

3. Поведение приложения под иОС пришлось огибать условными компиляциями. И не дай бог столкнутся два потока - падало сразу

4. У нас не работает дебаг (Berlin upd2 + PAS 19 + XCode 8.2)

5. Поведение ОС отличается кардинально.

6. Не смогли поднять какой-либо сервис в бекграунд-е.

И т.д.

 

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


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

Во, вот это уже по существу, спасибо!

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

Под хакинтошем дебаг работает? Какая у вас конфигурация компа для сборки в виртуалке?

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


Ссылка на сообщение
Поделиться на другие сайты
  • 1
2 минуты назад, Barbanel сказал:

Неработающий дебаг - это конечно боль

Так-то да, но ко всему привыкаешь... Может это только у нас не работает. Может в Токио уже на 19 PAServer'e работает.

3 минуты назад, Barbanel сказал:

а без условной компиляции под различные платформы имхо вообще никак...

Да, но иногда ее приходится юзать даже там где и не приходилось. Например при формировании размера контрола или картинки.

8 минут назад, Barbanel сказал:

Под хакинтошем дебаг работает?У

У нас нет

8 минут назад, Barbanel сказал:

Какая у вас конфигурация компа для сборки в виртуалке?

Железка стоит i7 + 16GB DD3 + SSD

родная ось 10ка + VMWare + OSX Mavericks

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


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

Железка стоит i7

Потому и быстрее собирает) Врядли в макбуке стоит такая же)

Спасибо за ответы!

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


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

у нас в качестве сборщика - какой-то древний макмини.

До iOS11 напрягало, что симулятор для отладки запускается безумно медленно.

А как перешли на Токио + IOS11 - эта проблема перестала играть роль, поскольку симулятор теперь просто не работает :D . Радикальное такое решение проблемы :)))

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


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

у нас в качестве сборщика - какой-то древний макмини.

До iOS11 напрягало, что симулятор для отладки запускается безумно медленно.

А как перешли на Токио + IOS11 - эта проблема перестала играть роль, поскольку симулятор теперь просто не работает :D . Радикальное такое решение проблемы :)))

Да, ребята в эмбаркадеро стараются, прогресс налицо)))

Сейчас тестируете на реальном телефоне?

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


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

Сейчас тестируете на реальном телефоне?

на iPad, у нас жесткое ограничение - информация на экранчик телефона просто не влезет :)))
Причем - на устройстве работаем без отладки (эта функция отключена корпоративной политикой безопасности). поэтому только лог. Удаленный + локальный.

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


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

на iPad, у нас жесткое ограничение - информация на экранчик телефона просто не влезет :)))
Причем - на устройстве работаем без отладки (эта функция отключена корпоративной политикой безопасности). поэтому только лог. Удаленный + локальный.

А как это отключить на iOS отладку?

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


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

А как это отключить на iOS отладку?

Без малейшего понятия, это надо у заказчика спрашивать.
У них планшеты отключены от "глобального" эппла, подсоединены к локальной MDM-системе и полностью контролируются именно ими.

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


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

Без малейшего понятия, это надо у заказчика спрашивать.
У них планшеты отключены от "глобального" эппла, подсоединены к локальной MDM-системе и полностью контролируются именно ими.

какой такой глобальный Эппл? Самое жесткое что там может стоят это AW , но даже тот не запретит прямую работу с устройством

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


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

подсоединены к локальной MDM-системе

а вот это любопытно. Контора только на яблоках устройств парк держит?

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


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

Если хотите комфорта, то любой https://www.apple.com/ru/macbook-pro/

тем более, если директор согласен, то можно развернуться! :)

 

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


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

Я пишу на Delphi под iOS без мака.

Что понадобится:

1. Процессор Intel, не AMD. Т.к. MacOS работает под Intel.

2. VMware + образ с установленной MAcOS.

3. iPhone 5s или выше. Т.к. начиная с iPhone 5s процессор стал x64. Сейчас публиковать нужно обязательно x64. iPhone 5 версия - x32.   Телефон можно купить б\у.

Идешь на рутрекер и скачиваешь Vmware образ с уже установленным MacOs Sierra. Также читай инструкции, - нужно пропатчить VMware - т.к. по дефолту возможность работы с OSX там отключена.

Дальше присоединяшь телефон к компу, и Vmware определяет этот телефон. Дальше все по инструкции EMBT. 

Да кстати, желательно не обновлять телефон до версии iOS 11 - к примеру у меня на Berlin были проблемы с этим SDK - поэтому я сейчас компилю проект на 10 SDK (при этом телефон остался на 11).

Итого все компилиться, и работает Debug - кстати он гораздо быстрее  чем Android отладка.

Да не забудьте купить аккаунт разработчика Apple - 100$ в год. Без него будет куча проблем с настройкой. Есть временный бесплатный сертификат на 5 дней (работает в течении 5 дней, затем нужно делать ребилд) - для этого можно запустить Xcode и создать и запустить пустой проект, но лучше сразу купить платный - будет меньше проблем.

 

 

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

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


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

4. У нас не работает дебаг (Berlin upd2 + PAS 19 + XCode 8.2)

У меня работает  Debug - Berlin upd2 - PAS 18, SDK 10.2, iOS на iPhone 5s = 11.2, Xcode v9.1. 

PAS 19 - для Delphi Tokyo и не будет корректно работать с Берлином. Я его не смог запустить с ним - постоянно выбрасывал ошибку, удивлен как вы его совместили вместе.

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

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


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

У меня работает  Debug - Berlin upd2 - PAS 18, SDK 10.2, iOS на iPhone 5s = 11.2, Xcode v9.1. 

PAS 19 - для Delphi Tokyo и не будет корректно работать с Берлином. Я его не смог запустить с ним - постоянно выбрасывал ошибку, удивлен как вы его совместили вместе.

И вашему удивлению есть объяснение -  я ошибся в тексте))) конечно же PAS 18  у нас с Берлином.

А как завелся дебаг? Никаких танцев? Из коробки прям поднялся?

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


Ссылка на сообщение
Поделиться на другие сайты
  • 1
42 минуты назад, FREEFAR сказал:

А как завелся дебаг?

На 10.2 никаких танцев не требуется. Проблемы только начиная с 11 версии, поскольку 11 симуляторы хотят работать только под 64 бита. А делфя пока не умеет мак в 64 бита.

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


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

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

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

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

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

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

Войти

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

Войти


  • Похожий контент

    • От Tumaso
      Подскажите, каким образом можно прочитать входящее СМС под iOS? Для Android на форуме есть работающий пример, а вот под iOS найти не удалось.
    • От Tumaso
      Столкнулся с неожиданной проблемой в iOS при работе с файлами: любые попытки чтения существующих файлов из System.IOUtils.TPath.GetDocumentsPath и любые попытки чтения/записи файлов в System.IOUtils.TPath.GetHomePath вызывают ошибку access denied. Где что нужно прописать, чтобы решить проблему работы с файлами?
    • От Виталий Иванов
      Есть ли возможность отследить сильное нажатие на элемент ? Долгое нажатие отлавливается, а вот сильное нажатие никак может есть какие-то уловки или это в принципе не возможно ?
    • От Astghik
      How to print text from Android (IOS) device ? (C++ Rad Studio 10.2)
      With USB printer and other types printers (WiFi, Bluetooth ....)
    • От Евгений Корепов
      Наткнулся тут на изящную штуку для приложения с PUSH уведомлениями на Android и Ios. Один объект, все сам делает.
      Внедрил в одно боевое приложение с 100+ тысячами установок, полет нормальный.
      Описание тут https://delphiworlds.com/2017/04/firebase-cloud-messaging-android-ios/
      Исходный код с примером на гитхабе https://github.com/DelphiWorlds/PushClient
      Использование максимально простое:
      uses DW.PushClient; .... private FPushClient: TPushClient; procedure PushClientChangeHandler(Sender: TObject; AChange: TPushService.TChanges); procedure PushClientReceiveNotificationHandler(Sender: TObject; const ANotification: TPushServiceNotification); .... procedure TFormMain.InitPushService; begin FPushClient := TPushClient.Create; FPushClient.GCMAppID := ConstGCMAppID; FPushClient.ServerKey := ''; FPushClient.BundleID := ''; FPushClient.UseSandbox := Debug; // Change this to False for production use! FPushClient.OnChange := PushClientChangeHandler; FPushClient.OnReceiveNotification := PushClientReceiveNotificationHandler; try FPushClient.Active := True; except SendError('FPushClient.Active Exception'); end; end; procedure TFormMain.PushClientChangeHandler(Sender: TObject; AChange: TPushService.TChanges); begin if TPushService.TChange.DeviceToken in AChange then begin HDevicePushParams.DeviceID:=FPushClient.DeviceID; HDevicePushParams.DeviceToken:=FPushClient.DeviceToken; GetHTTP(CommandRegisterFCM); // Memo1.Lines.Add('DeviceID = ' + FPushClient.DeviceID); // Memo1.Lines.Add('DeviceToken = ' + FPushClient.DeviceToken); end; end; procedure TFormMain.PushClientReceiveNotificationHandler(Sender: TObject; const ANotification: TPushServiceNotification); begin // ShowMessage(ANotification.DataObject.ToString... end; Правда руки не дошли разобраться для чего ему 
        FPushClient.ServerKey := '';
        FPushClient.BundleID := '';
      Но и без этого работает.
       
    • От erden1
      ЗДравствуйте!
      Подскажите пожалуйста как добавить рекламу в новые ios приложения? Возможно ли это сделать с помощью компонента TBannerAD? И какие есть способы?
    • От Alex7wrt
      Добрый день.
      Имеется приложение, которое реализовано в портретной и альбомной ориентации. При повороте экрана срабатывает событие TForm.OnResize, в котором производятся изменения размеров и положения элементов.
      В Андроиде при повороте все происходит плавно, а в iOS на долю секунды мигает экран с изменённым положением контролов и только потом перерисовывается. Почему так происходит и как это можно исправить?
    • От Anasazi
      Всем добрый день! Получаю координаты с помощью yandex api. Использую вот такой код:
          try
          ////Запрос на Яндекс для получения координат
           MainForm.NetHTTPClient1.Get
          ('https://geocode-maps.yandex.ru/1.x/?geocode='+
          'Кунгур'+
          ',+'
          +street+
          '+улица,+дом+'+
          house, Result);
          finally
          end;
       
      Код отрабатывает нормально, но если ну устройстве нет интернета, то приложение просто вылетает. Подскажите пожалуйста как поправить.
      Приложение для iOS.
    • От Alex7wrt
      Здравствуйте.
      Нужен совет по интеграции баннера Admob к iOS приложению. Может быть кто-нибудь уже делал подобное?
      Насколько я начитался в инете по похожим запросам, нужно скачать GoogleMobileAds.framework и подключить его в Project-Options-Linking-Options passed to the LD Linker. Кроме этого фреймверка еще нужны такие:
      EventKit  EventKitUI  AVFoundation  AdSupport  AudioToolbox  AVFoundation  CoreGraphics  CoreTelephony  CoreMedia  MessageUI  StoreKit  SystemConfiguration Которые подгрузил в SDK Manager. 
      Далее в  “Options passed to the LD linker” добавляю:
      -ObjC -LC:\Users\<user>\Documents\Embarcadero\Studio\SDKs\iPhoneOS8.3.sdk\usr\lib Frameworks\GoogleMobileAds.framework\GoogleMobileAds Frameworks\AdSupport.framework\AdSupport Frameworks\AudioToolbox.framework\AudioToolbox Frameworks\AVFoundation.framework\AVFoundation Frameworks\CoreGraphics.framework\CoreGraphics Frameworks\CoreMedia.framework\CoreMedia Frameworks\CoreTelephony.framework\CoreTelephony Frameworks\EventKit.framework\EventKit Frameworks\EventKitUI.framework\EventKitUI Frameworks\MessageUI.framework\MessageUI Frameworks\StoreKit.framework\StoreKit Frameworks\SystemConfiguration.framework\SystemConfiguration -lxml2.2
      После этого во время компиляции возникает ошибка в фреймворке GoogleMobileAds.framework. 
      Все остальные фреймворки ошибок не вызывают.
      Текст ошибки: 
      [DCC Error] E2597 NYI lto::archName
      ld: file was built for unsupported file format ( 0x56 0x65 0x72 0x73 0x69 0x6F 0x6E 0x73 0x2F 0x43 0x75 0x72 0x72 0x65 0x6E 0x74 ) which is not the architecture being linked (arm64):
      Это для версии iOS Device 64 bit. Для 32 бит ошибка та же, только в конце вместо arm64 написано armv7.
      Символы 0x56 0x65 0x72 0x73 0x69 0x6F 0x6E 0x73 0x2F 0x43 0x75 0x72 0x72 0x65 0x6E 0x74 в переводе на ACSII значат "Versions/Current" - это часть строки в файле GoogleMobileAds.
      Вот и не пойму как эту ошибку обойти.
    • От Alex7wrt
      Здравствуйте.
      Дошел до тестирования iOS приложения на физическом устройстве. Сертификаты разработчика подключены. Приложение вроде как устанавливается на Ipad, потому что значок на рабочем столе планшета появляется. Но само приложение не запускается, показывается только стандартная заставка FireMonkey (заставку не менял) и приложение вылетает. При этом на симуляторе работает без ошибок.
      Также после завершения установки в среде появляется сообщение об ошибке:
       
      И справочная информация об ошибке "Troubleshooting: Cannot Deploy to the iOS Device"
      В чем может быть причина?
      На Ipad стоит iOS 10.2.1, на маке XCode 8.0
       
  • Последние посетители   0 пользователей онлайн

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