Я отримав цю помилку з Xcode 5, коли я намагаюся запустити додаток на своєму пристрої.
Виконаний файл був підписаний з недійсним правом
Він добре працював з Xcode 4.x. Хтось знає, як позбутися помилки?
Я отримав цю помилку з Xcode 5, коли я намагаюся запустити додаток на своєму пристрої.
Виконаний файл був підписаний з недійсним правом
Він добре працював з Xcode 4.x. Хтось знає, як позбутися помилки?
Відповіді:
Я протягом години захопився цим питанням і нарешті знайшов виправлення. Виявилося, що група розробників відрізнялася в ProjectTarget та ProjectTests.
Перезапуск Xcode - це те, що працювало для мене.
Я з’ясував проблему. Додаток, який я створив на developer.apple.com, не включає звук між додатками. У файлі плістів прав на проект Xcode встановлено звук між додатками та встановлено значення ТАК (за замовчуванням). Одного разу я змінив налаштування в моїй конфігурації програми на developer.apple.com, щоб увімкнути звук між додатками. Потім мій додаток працює на моїх пристроях. Я думаю, що це нове правило Apple, яке дозволяє налаштувати додаток як на developer.apple.com, так і на налаштуваннях проекту xcode.
Мені вдалося виправити це, включивши / вимкнувши права "Ігровий центр" у Xcode 5 :-)
Жодне рішення не працювало для мене, поки я не перевірив і встановив тести додатків на той самий профіль забезпечення, що і основний. Або якщо ви використовуєте автоматичний спів, переконайтесь, що в цілі тестів вибрана та сама команда.
Для XCode 10, можливо, потрібно буде використовувати застарілу систему збирання
Зміни можуть бути внесені в параметри файлу / проекту. ПОМИЛКА ITMS-90174: "Відсутній профіль надання послуг - Програми iOS повинні містити профіль забезпечення у файлі з назвою embedded.mobileprovision."
Кордова / іонна анонс: https://github.com/apache/cordova-ios/isissue/407
Рішення для останнього Xcode :
Спочатку ви повинні перевірити, що у вашому центрі учасників увімкнено для вашої конкретної програми AppID :
Потім у відповідній цілі в Xcode ви повинні бути включена тієї ж можливість: В цьому випадку: App Group
, Game Center
, In-App Purchase
. Усі вони повинні бути включені у вашій цілі в Xcode.
Однак це не має значення для режиму DEBUG :
це дуже важливо для вашого режиму звільнення :
Зауважте, що Game Center
та In-App Purchase
увімкнено за замовчуванням у центрі члена , але відключені у вихідні Xcode в.
Я думаю, що ваша проблема полягає в тому, що ви використовували профіль xCode4.6, а тепер ви використовуєте xCode5.
Вам потрібно оновити профілі сертифікатів / резервування через XCode> Налаштування> Облікові записи
XCode> Налаштування> Облікові записи> Клацніть на DEV ACCOUNT> Кнопка перегляду деталей (праворуч внизу)> З'явиться екран підписання Іден / ПП> натисніть Оновити.
Потім виберіть знову з налаштувань збірки правильний профіль та очистіть та складіть свій проект.
Сподіваюся, це вам допоможе.
Мені довелося відповідати можливостям програми в Xcode5 під
Capabilities ->
In-App purchase -> ON
Game Center -> ON
з цим у профілі, що формується.
xcode 6.1 (зразок HealthKit)
Я отримав цю помилку через інтеграцію HealthKit: я ввімкнув придбання через додаток, ігровий центр та Healkit вирішив мою проблему .. Те саме, що я ввімкнув у профілі Provision.
(Xcode 6.1)
Проблема для мене полягала в налаштуваннях збірки; Під час спроби розгортання на пристрої мій профіль надання послуг був встановлений у виробничому профілі магазину додатків. Я переключив його на "Автоматичний", і це вирішило мою проблему. Ви також можете встановити його у своєму профілі Dev Provision.
У мене також є 2 сертифікати, тож я додав свій другий сертифікат до мого розробки. Інші, мабуть, не матимуть цієї проблеми.
У мене була подібна проблема, коли я оновив до Xcode 10, вирішив проблему, перейшовши до Файл> Налаштування проекту, в опції «Нова система збирання» виберіть «Спадкова система збирання». Це зробило для мене хитрість, я сподіваюся, що це комусь допоможе.
Якщо перезапуск xcode не працює, створіть новий профіль надання та обов’язково включіть свої тестові пристрої.
У моєму випадку пристрій не додано. Тому мені довелося додати пристрій і створити новий профіль надання.
Ще одна річ, що потрібно перевірити - переконайтеся, що в обох вибрані правильні сутності
Цілі -> Ваша мета -> Налаштування збірки -> Підписання
і
Проект -> Ваш проект -> Налаштування збірки -> Суб'єкт підписання коду
Я отримав це повідомлення, коли у мене було вибрано повний профіль розробника в одному та іншому (не розробник) Apple ID, обраному в іншому, навіть не вимагаючи прав у додатку.
Здається, це невелика помилка всередині Xcode. Спробуйте все-таки архівувати його, навіть із цим є проблема entitlements
. Якщо ваші права будуть нормальними, вони будуть завантажені без проблем. Apple приймає це, і ваша програма буде опублікована в AppStore.
Я це і зробив :)
Це може бути пов'язано і з неправильною схемою.
У мене була така ж проблема в XCode 5. Це мені все одно допомогло.
XCode > Preferences > Location tab > DerivedData
Натисніть трохи стрілки вліво, щоб відкрити DerivedData в Finder. Перемістіть у папку сміття свого проекту та відновіть його.
Мав якесь питання. Вирішіть: перейдіть до потрібної цілі -> можливостей -> для мене виникла проблема з "Покупкою в додатку" та кнопкою, щоб її виправити. Виправлена помилка операції.
У моєму випадку: мені потрібно ввімкнути аудіо програму Inter-App
Capabilities -> Inter-App Audio
Я думаю, оскільки я використовую повідомлення Parse.com, воно потребує посилання на AudioToolbox.framework
Відповіді тут здаються трохи недостатніми, тому я додаю свої два центи:
Справжнє рішення полягає в тому, що зазвичай існує невідповідність між тим, що зберігається у вашому профілі резервування (перевірте на developer.apple.com -> members -> сертифікати -> cert, який ви використовуєте [не забудьте перевірити, чи dev / production) і що ввімкнено у вашій програмі (назва проекту подвійним клацанням миші), у горизонтальному меню виберіть "Можливості" (поруч із "Загальні").
Якщо ви нещодавно змінили одне з них, обов’язково оновіть свої сертифікати в розділі XCode -> Налаштування -> Облікові записи -> Деталі -> Значок оновлення та перезапустіть XCode.
У моєму випадку я повинен був прийняти ліцензійну угоду для розробника Apple.
Увійдіть до облікового запису розробника Apple і дотримуйтесь повідомлення сповіщення, подібного нижче.
"Оновлено ліцензійну угоду програми для розробників Apple. Щоб отримати доступ до певних ресурсів членства, **** має прийняти останню ліцензійну угоду до 28 червня 2016 року."
Раніше мені не вдалося додати / редагувати контейнери iCloud до ідентифікатора додатка, хоча я змінив / перевірив можливості, надання профілів, сертифікатів тощо. Після узгодження з контрактом все почало працювати безперебійно.
Сподіваємось, це заощадить чийсь цінний час.
Я стикався саме з таким самим питанням зовсім недавно. Прочитавши багато різних порад, які жодна з них не працювала на мене, я нарешті зайшов під капот і знайшов першопричину проблеми.
Файл надання мобільних пристроїв насправді НЕ співпадає з файлом Entitlements, згенерованим Xcode.
Хоча всі файли автоматично обробляються інструментом Apple, вони невірні.
Якщо ви завантажуєте файл резервування з порталу Apple і відкриваєте його (ви можете відкрити його, тому що це просто пліст-файл, підписаний вашим сертифікатом, тому він читається текстовим редактором) і порівняйте його з вашим файлом Entitlements (автоматично генерується Xcode та зберігається у файлах проекту (тож це знову пліст XML-файлу, який читається текстовим редактором). Тоді ви можете побачити різницю.
У моєму випадку це було ігровим центром. Він відображався на порталі як перевірений (встановлено прапорець за замовчуванням), але насправді це право не було включено до файлу забезпечення мобільних пристроїв. Тож було справа видалити його з файлу Entitlements.
Таким чином, результат - вміст профілю мобільного забезпечення іноді не збігається з тим, що відображається на сторінці конфігурації APP.
Для тих, хто має таку ж проблему із забезпеченням автоматичного профілю профілю в цілях налаштування збірки:
Будьте дуже обережні, редагуючи файл цільових прав! Це може порушити відповідність автоматично створеному профілю надання, і ви отримаєте цю помилку.
У моєму випадку мені довелося тимчасово використовувати контейнери для виробництва iCloud з налагодженнями. Для цього я вставив
<key>com.apple.developer.icloud-container-environment</key>
<string>Production</string>
у файлі прав, і це спрацювало!
Щоб нагадати мені, що мені довелося пізніше видалити ці рядки, я просто вставив такий коментар:
<key>TODO</key>
<string>The entry below must be out commented or deleted to use the iCloud development environment.</string>
І це порушило листування і створило помилку .
Я використовую Push-повідомлення в своєму додатку, і після завершення розробки я намагався перевірити push-повідомлення для конфігурації релізу . Тоді я отримав цю помилку.
Я використовував профіль виробничого забезпечення для запуску до випуску . Тож я зміг вирішити цю помилку за допомогою профілю надання Adhoc .