Как добавить платформу IOS, которая может быть встроена в Swift 4 с платформой Ionic Cordova? - PullRequest
2 голосов
/ 13 апреля 2019

Я перенес приложение Ionic 3 в Ionic 4 и обновил многие из моих зависимостей.Приложение Ionic 4 отлично работает в браузере.На прошлой неделе я обновил свой Xcode с 10.1 до 10.2.В обновлении Xcode прекращена поддержка Swift 3, и, по-видимому, ionic cordova может экспортировать проект только в swift 3. В результате мое приложение больше не работает в симуляторе Xcode.

Я попытался обновить Ionic 4 и Cordova до их последних версий, а затем развернуть мой код на IOS без указания конкретной версии.Я только запустил $ ionic cordova add ios, и он все еще строит проект в Swift 3. В попытке Hail Mary попытаться решить проблему в Xcode, я вручную изменил язык проектов на Swift 4 через настройки сборки.Я получил одну фатальную устарелую ошибку, которую разрешил разрешить кнопку FIXME в Xcode.После этого симулятор смог загрузить приложение Ionic 4 ... но все мои запросы на основе API не работают.

Ионная информация:

Ionic:

   ionic (Ionic CLI)             : 4.12.0 (/Users/tavosoto/.nvm/versions/node/v11.7.0/lib/node_modules/ionic)
   Ionic Framework               : @ionic/angular 4.2.0
   @angular-devkit/build-angular : 0.13.8
   @angular-devkit/schematics    : 7.2.4
   @angular/cli                  : 7.2.4
   @ionic/angular-toolkit        : 1.3.0

Cordova:

   cordova (Cordova CLI) : 9.0.0 (cordova-lib@9.0.1)
   Cordova Platforms     : ios 5.0.0
   Cordova Plugins       : cordova-plugin-ionic-keyboard 2.1.3, cordova-plugin-ionic-webview 3.1.2, (and 15 other plugins)

System:

   Android SDK Tools : 26.1.1 (/Users/tavosoto/Library/Android/sdk/)
   ios-sim           : 7.0.0
   NodeJS            : v11.7.0 (/Users/tavosoto/.nvm/versions/node/v11.7.0/bin/node)
   npm               : 6.5.0
   OS                : macOS Mojave
   Xcode             : Xcode 10.2 Build version 10E125

Ошибка запроса API в симуляторе:

ERROR: {"headers":{"normalizedNames":{},"lazyUpdate":null,"headers":{}},"status":0,"statusText":"Unknown Error","url":"https://example.com/api/v1/legal","ok":false,"name":"HttpErrorResponse","message":"Http failure response for https://example.com/api/v1/legal: 0 Unknown Error","error":{"isTrusted":true}}

Ожидаемый результат заключается в том, что Ionic 4 и Cordova могут успешно экспортировать платформу IOS вSwift 4 для поддержки устаревания Swift 3 в Xcode 10.2.

...