Ошибка - ошибка сегментации: 11 в Xcode 10 - PullRequest
0 голосов
/ 03 октября 2018

Я работал в Xcode 9. Код работал нормально, но когда я использовал тот же код в Xcode 10, я получаю ошибку времени компиляции.

Это ошибка:

1.  While emitting SIL for 'fetchConsumerRecommendations(completionHandler:failureHandler:)' at /Users/shahezad/Desktop/Newcode/foodkonnectconsumer-ios/Food/FirebaseManager.swift:2578:5
2.  While silgen emitFunction SIL function "@$S4Food15FirebaseManagerC28fetchConsumerRecommendations17completionHandler07failureH0yySaySSGc_ys5Error_pSgctFZ".
 for 'fetchConsumerRecommendations(completionHandler:failureHandler:)' at /Users/shahezad/Desktop/Newcode/foodkonnectconsumer-ios/Food/FirebaseManager.swift:2578:5
3.  While silgen closureexpr SIL function "@$S4Food15FirebaseManagerC28fetchConsumerRecommendations17completionHandler07failureH0yySaySSGc_ys5Error_pSgctFZySo19FIRDocumentSnapshotCSg_AItcfU_".
 for expression at [/Users/shahezad/Desktop/Newcode/foodkonnectconsumer-ios/Food/FirebaseManager.swift:2584:285 - line:2615:9] RangeText="{ (documentSnapshot, error) in


            if error == nil {

                if (documentSnapshot?.exists)!{

                    print("Consumer Recommendations - \(describing: documentSnapshot?.data())")

                    let dictOnboarding:NSDictionary = (documentSnapshot?.data())! as NSDictionary

                    print("\(dictOnboarding.allKeys)")

                    completionHandler(dictOnboarding.allKeys as! [String])

                }
                else{


                    completionHandler([])

                }

            }
            else{

                failureHandler(error)

            }


        }"
error: Segmentation fault: 11

Я не могу понять, что это за проблема с кодом.

1 Ответ

0 голосов
/ 03 октября 2018

Может быть две причины этой проблемы.Один из модулей в вашем приложении может использовать CommonCrypto или версия Swift Language может быть неоднозначной.Для обеих задач существуют следующие решения:

Метод 1

  1. Поиск во всем проекте слова CommonCrypto.
  2. Если выиметь модуль, содержащий импорт заголовка, удалите этот модуль из Podfile и выполните установку модуля.
  3. Очистите и соберите проект.
  4. Снова добавьте модуль Pod в файл Pod и выполните установку модуля.
  5. Очистите и соберите проект заново, используя реальное устройство, если это возможно.

И если у вас нет этого модуля, возможно, вы можете попробовать выполнить те же действия с некоторымистарый Pod, с которым вы можете столкнуться в своем проекте.

Добавлена ​​информация: также Если у вас есть какая-то ошибка кода внутри Pod, сначала вам нужно решить эту проблему кода, а затем попытаться снова скомпилировать проект.

Метод 2

Убедитесь, что ваша версия Swift Language Version находится в правильной версии.Для Xcode 10. Я бы порекомендовал вам использовать Swift 4.2, или вы можете выбрать версию, в которой написан ваш код. Вы можете следовать настройкам сборки в своей цели, как на этом изображении

Я надеюсь, что это поможет

С уважением

...