Я прочитал много потоков и не могу найти что-то вроде моей проблемы здесь. Я думаю, что это простое исправление, но я просто не могу найти ответ. Я использую Xcode 4.1 Gold Master.
В основном, когда я архивирую свое приложение для Mac, он проходит через все обычные процессы. Сборка выполнена успешно. Однако, когда я отправляю в магазин приложений, я получаю следующее сообщение:
Invalid Code Signing Entitlements - Your application bundle signature contains code
signing entitlements that are not supported on Mac OS X; this may happen if your Mac OS X
project was ported from iOS. Please check your Xcode project code signing entitlements
configuration, and remove any unneeded entitlements.
Specifically, key "application-identifier" in "My App" is not supported.
Мое приложение не было перенесено из iOS, и я никогда не устанавливал права доступа. После многих часов копания я обнаружил, что фаза кода знака генерирует файл .xcent в этом формате:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>application-identifier</key>
<string>My.App.Identifier</string>
<key>com.apple.application-identifier</key>
<string>My.App.Identifier</string>
</dict>
</plist>
Первый ключ - тот, который вызывает проблему. Когда я удаляю это и принудительно отменяю приложение с тем же файлом .xcent через командную строку, приложение переходит через.
Я удалил и переустановил xcode, чтобы узнать, помогает ли это... это не так.
Я знаю, что создание этого файла привязано к профилю подготовки. Кажется, он получает правильные данные, но добавляет, что существующий тег. Я проверил как настройки проекта и сборки, так и никаких прав на подписание кода вообще. Любая идея, как я могу заставить Xcode прекратить генерировать этот ключ? Я не очень люблю это делать каждый раз, когда хочу отправить в магазин приложений.