Я прочитал много тем и не могу найти ничего похожего на мою проблему здесь. Я думаю, что это простое решение, но я просто не могу найти ответ. Я использую Xcode 4.1 Gold Master.
По сути, когда я архивирую свое приложение Mac, оно проходит через все обычные процессы. Сборка прошла успешно. Однако, когда я отправляю в магазин приложений, я получаю следующее сообщение:
Invalid Code Signing Entitlements - Your application bundle's 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's 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 прекратить генерировать этот ключ? Я не очень люблю делать это каждый раз, когда хочу отправить в магазин приложений.