Отсутствует требуемая подпись кода для библиотеки

#ios #swift #xcode8

#iOS #swift #xcode8

Вопрос:

Я использую Swift 3.0 в Xcode 8 и сталкиваюсь с этой ошибкой при запуске моего приложения. Я использовал стороннюю библиотеку SlideMenuController.

Когда я запускаю свое приложение, я снова и снова сталкиваюсь с этой ошибкой, но не нашел никакого решения.

Удаление производных данных работает некоторое время, но не всегда.

/Users/amsyt014/Library/Developer/CoreSimulator/Devices/8615687B-36F4-4367-9289-C265F3DABDD5/data/Containers/Bundle/Application/4794E2EF-863E-4836-A8E7-5A0F0ABA52E0/Shopaves.app/Frameworks/SlideMenuControllerSwift.framework/SlideMenuControllerSwift : требуемая подпись кода отсутствует для ‘/Users/amsyt014/Library/Developer/CoreSimulator/Devices/8615687B-36F4-4367-9289-C265F3DABDD5/data/Containers/Bundle/Application/4794E2EF-863E-4836-A8E7-5A0F0ABA52E0/Shopaves.app/Frameworks/SlideMenuControllerSwift.framework/SlideMenuControllerSwift’

Ответ №1:

Следующая команда в Podfile помогла мне:

 post_install do |installer|
    installer.pods_project.build_configurations.each do |config|
        config.build_settings.delete('CODE_SIGNING_ALLOWED')
        config.build_settings.delete('CODE_SIGNING_REQUIRED')
    end
end
  

Комментарии:

1. Фантастическое решение, если очистка производных данных не работает!

2. Очистка производных данных не помогла. Этот сделал! Спасибо, что поделились этим. 👍🏼

3. Это работает отлично. Удаление производных данных и очистка проекта не помогли.

Ответ №2:

Способ 1

Добавьте следующий код в свой pod-файл

 post_install do |installer|
    installer.pods_project.build_configurations.each do |config|
        config.build_settings.delete('CODE_SIGNING_ALLOWED')
        config.build_settings.delete('CODE_SIGNING_REQUIRED')
    end
end
  

Способ 2

Выполните следующие действия

  1. Удалите приложение с мобильного устройства или симулятора (где бы вы ни столкнулись с этой проблемой).
  2. Выберите slideMenuController.framework в навигаторе проекта, щелкните по нему правой кнопкой мыши и нажмите показать в Finder. Откройте папку _CodeSignature и удалите все файлы, кроме CodeResources.

  3. Закройте Xcode, откройте терминал и введите следующую команду

     rm -rf ~/Library/Developer/Xcode/DerivedData
      

    Это приведет к удалению всех производных данных из xcode.

  4. Откройте XCode, очистите и запустите приложение. Надеюсь, проблема будет решена.

Комментарии:

1. что делает сценарий в методе 2, внутренне. Я полагаю, просто отключить и подписать код?

Ответ №3:

У меня была такая же проблема с моим mac10.12.5 и Xcode 9, похоже, есть проблема с существующими данными в расположении производных данных, поэтому лучше просто удалите свои производные данные либо с помощью :

 XCode>Prefrences>Locations>click on arrow at Derived Data location amp; delete it.
  

или либо написав эту команду на терминале: убедитесь, что ваш xcode находится в приложении, либо вы указываете свое местоположение xcode :

 rm -rf ~/Library/Developer/Xcode/DerivedData
  

Теперь откройте XCode, запустите приложение. Надеюсь, проблема будет решена.
Удачи…

Комментарии:

1. Это сработало для меня. Я получал требуемую подпись кода: RoundedSwitch.framework. Я сделал то же самое, но, пожалуйста, не забудьте закрыть simulator amp; Xcode перед удалением этой папки DerivedData.

Ответ №4:

Я использую ту же библиотеку. Вот что я сделал, чтобы решить проблему.

Найдите SlideMenuControllerSwift.framework в папке вашего проекта / папке pods в xCode. Перейдите к ее местоположению в finder.

Внутри фреймворка вы найдете папку _CodeSignature. В этой папке _CodeSignature у меня было около 5 файлов. Удалите все, кроме файла ресурсов кода.

Очистите проект сборки и запустите.

Комментарии:

1. Спасибо, это сработало для меня. К вашему сведению, ранее я удалял файл POD для SlideMenuControllerSwift. Шаги, которые я выполнял: 1. Закомментируйте имя модуля SlideMenuControllerSwift и снова установите модуль. 2. Чистая сборка. 3. Снова раскомментируйте имя модуля SlideMenuControllerSwift и снова установите модуль. Надеюсь, это сработает для вас.

Ответ №5:

Я столкнулся с той же проблемой с Xcode версии 8.0, включив функцию автоматического управления подписью.

Другое решение:

Пожалуйста, ознакомьтесь с этой проблемой: https://github.com/Carthage/Carthage/issues/1401

Второе решение может подойти вам.

Примечание: пожалуйста, удалите производные данные отсюда ~/Library/Developer/Xcode/DerivedData

Комментарии:

1. проблемы в Xcode 8.0, похоже, не проходят, даже пробовали это, но бесполезно: (

Ответ №6:

Я решил свою проблему, установив для «ENABLE_BITCODE» значение 0

Комментарии:

1. Привет, спасибо, что поделились этим, это также решило мою проблему

Ответ №7:

Я решил эту проблему, установив профиль в разделе Настройка сборки -> Идентификатор подписи кода в моем проекте Framework. Моя встроенная платформа (другая платформа в моей собственной платформе) добавляется в раздел копирования файлов на этапе сборки.

hth!

Ответ №8:

Решается простым удалением производных данных и приложения на устройстве. Если это не сработает, попробуйте включить / выключить автоматическую подпись.

Ответ №9:

У меня была эта ошибка при создании моей собственной платформы и обновлении ее Pods .

Я отключаюсь Automatically manage signing , и теперь все работает хорошо.

Надеюсь, это поможет вам!

Ответ №10:

Просто измените правильную версию Xcode, которую вы используете в данный момент, в настройках / местоположениях Xcode.

Пожалуйста, обратитесь к этому изображению для справки