Запуск додатків для iOS спричиняє помилку під час виконання програми "невірна підпис коду"


32

Кожен раз, коли я намагаюся запустити цю програму, вона створює гаразд і встановлює, але як тільки програма запускається, програма розривається та друкує це повідомлення про помилку. XCode 11 та iOS 13.

dyld: Library not loaded: @rpath/StandardCyborgFusion.framework/StandardCyborgFusion
  Referenced from: /private/var/containers/Bundle/Application/2292CCF2-800F-4E28-AF10-A1B98081DD0A/StandardCyborgExample.app/StandardCyborgExample
  Reason: no suitable image found.  Did find:
    /private/var/containers/Bundle/Application/2292CCF2-800F-4E28-AF10-A1B98081DD0A/StandardCyborgExample.app/Frameworks/StandardCyborgFusion.framework/StandardCyborgFusion: code signature invalid for '/private/var/containers/Bundle/Application/2292CCF2-800F-4E28-AF10-A1B98081DD0A/StandardCyborgExample.app/Frameworks/StandardCyborgFusion.framework/StandardCyborgFusion'

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

  • Прибирання та будівництво
  • Перезапуск XCode
  • Перезапуск Mac
  • Повністю скидання брелка
  • Перевірка всіх налаштувань довіри Keychain є в розділі "Використовувати системні настройки за замовчуванням"
  • Скидання заводських налаштувань Mac

ОНОВЛЕННЯ 1: Можливо, проблема з моїм пристроєм iOS. Додаток може запускатися на тренажері, але симулятор не корисний для моїх розробок, тому мені потрібно зробити цю роботу на своєму пристрої. Нещодавно я оновив свій iPhone XR на iOS 13.3.1.

ОНОВЛЕННЯ 2: Знайдено іншу групу, яка, схоже, має той самий випуск https://github.com/flutter/flutter/isissue/49504 .


звідки StandardCyborgFusion.framework? зв’яжіться зі своїм розробником ...
користувачем3441734

1
ви намагалися зв’язати або вбудувати рамку?
Пішохід

1
Ця помилка трапляється з усіма програмами. Не є рамковим.
Айдан Россуд

Додано оновлення. Здається, що це конкретний пристрій, оскільки він працює на тренажері, і мій друг здатний скласти ті самі рамки на своєму пристрої.
Айдан Россуд

1
Ваш StandardCyborgFusion.framework або не підписаний кодом, або не складений для архітектури arm64. Ви досі не сказали нам, як ви отримали рамки. Крім того, якщо хтось скаже вам перезапустити Xcode, щоб виправити проблеми з компіляцією / зв’язуванням, скасуйте їх.
Клаус Йоргенсен

Відповіді:


25

Я використовую CocoaPods, і для мене це виправляє помилку (Відповідь Wasa22 на проблему github):

  1. Відкрийте підфайл
  2. Прокоментуйте use_frameworks!
  3. Додайте use_modular_headers!
  4. У Терміналі зробіть оновлення pod -> pod install
  5. У Xcode, Очистити (Command-Shift-K) -> Побудувати та запустити.

Джерело: https://github.com/Alamofire/Alamofire/isissue/3051


Це рішення насправді працює!
RapsIn4

Я не встиг перевірити, чи працює це, оскільки я щойно запозичив обліковий запис розробника друзів, але позначу це як правильне. Буду вдячний, якби інші могли підтвердити, що це працює і для них.
Айдан Россуд

Що робити, якщо у мене немає підфіля, що я можу зробити в цьому випадку?
abdou31

1
прокоментуйте use_frameworks та запустіть команду оновлення pod - достатньо
Lahiru Prasanna

27

Це проблема з iOS 13.3.1. Усі динамічні рамки, складені до найновішого випуску iOS 13.3.1, відчувають цю проблему під час запуску в особистому профілі забезпечення / облікового запису розробника. Розчин, скопійований з jmagman від Github, знаходиться нижче.

Ти можеш:

  1. Використовуйте профіль надання персональної команди (персональний обліковий запис розробника).
  2. Запустіть на тренажері 13.3.1.
  3. Перевірте на справжньому пристрої iOS, що працює на версії 13.3 або новішої.
  4. Встановіть бета-профіль на свій тестовий пристрій та встановіть iOS 13.4 beta 3. (Виправлено)
  5. Зачекайте виходу iOS 13.4.

Сподіваємось, це питання буде вирішено найближчим часом.


Я знижуюсь з iOS 13.3.1 до 13.3. Не можна просто залишитися і чекати, поки Apple це виправить.
Старський

Так ... здається, я не можу створити резервну копію даних, маючи iOS 13.3.1, а потім відновити їх на iOS 13.3. Це сумно ((Відновлення має виконуватися за тими самими версіями iOS. Отже, це також не рішення ...
Starsky

Я б хотів, щоб я швидше знайшов цю відповідь. . . Я витратив 3 години, намагаючись налаштувати свої параметри збірки, бінарні файли та фази збірки. . . Отримання платного рахунку вирішило це заздалегідь
Маркус Кім

Класичне яблуко, що створює помилку, яка підштовхує вас щось купити.
Дарій Бухай

Дуже дякую за чітку та правильну відповідь, +1.
mAc

3

Схоже, це виправлено на iOS 13.4 beta 3. Ви можете встановити бета-профіль або дочекатися виходу iOS 13.4.


1
24 березня Apple випустила iOS 13.4. Це оновлення включає виправлення проблеми з підписом коду! Для отримання додаткової інформації зверніться до iOS 13.4 beta 3.
Rover

2

Я бачу 2 способи виправити це.

  1. Перехід на iOS 13.3. iOS 13.3.1 порушує підпис третьої сторони, якщо у вас немає платного облікового запису розробника. Якщо можливо (придбайте дешевий iphone, присвячений розробці)

  2. Оновіть Mac OS, Xcode та iOS до останньої бета-версії (Оновлення будь-кого з них не працюватиме, оскільки для бета-версії iOS потрібна остання бета-версія Xcode, а для Xcode потрібна остання версія Mac OS Catalina)


0

Якщо ви запустите з Xcode, ви побачите помилку:

/private/var/containers/Bundle/Application/D0BD5694-A7D6-4820-A146- 
 A49DF0C0F0B1/Runner.app/Frameworks/Flutter.framework/Flutter: code signature 
invalid for '/private/var/containers/Bundle/Application/D0BD5694-A7D6-4820- 
A146-A49DF0C0F0B1/Runner.app/Frameworks/Flutter.framework/Flutter'

рішення, надане jmagman на Github

jmagman перейшов до Apple (FB7562472) і дасть усім знати, якщо вони щось почують. докладніше про github


0

З цією проблемою я зіткнувся, намагаючись створити свій фактичний пристрій iOS (але він добре працював у тренажері). Я витратив щонайменше 10 годин на те, щоб виправити цю помилку. Перепробував усе на всіх форумах, нічого не вийшло. Але це для мене нарешті спрацювало!

  • Оновлення від iOS 13.3.1 до iOS 13.4.1

Я не міг цього собі уявити, але правда, що iOS 13.3.1 порушує підпис третіх сторін, якщо у вас немає облікового запису розробника!


Вам просто потрібно оновити пристрій iOS до 13.4.x. Після оновлення я можу запустити якийсь прикладний проект без будь-яких інших коригувань.
Корбан
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.