1
我有兩個應用程序 - 一個在名稱中有一個空格,另一個沒有。當我嘗試通過命令行構建過程運行應用程序時,我遇到了應用程序能夠正常工作的問題 - 即:用「SecItemCopyMatching:丟失授權」炸彈 來自命令行的xcodebuild - 授權問題-SecItemCopyMatching:缺少授權
---當我嘗試檢查授權
>machine:Release-iphoneos builder$ codesign -d --entitlements - Application\ Name.app
Executable=/Users/Shared/Jenkins/Home/jobs/My_Application_Name/workspace/build/Release-iphoneos/Application Name.app/Application Name
---當我在一個應用程序運行這個沒有名字的空間:
machine:Release-iphoneos builder$ codesign -d --entitlements - application.app
Executable=/Users/Shared/Jenkins/Home/jobs/My_Application_Name/workspace/ios/build/Release-iphoneos/Application.app/Application
??qq?<?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>ABC123456.com.company.app</string>
<key>aps-environment</key>
<string>production</string>
<key>get-task-allow</key>
<false/>
<key>keychain-access-groups</key>
<array>
<string>ABC123456.com.company.app</string>
</array>
</dict>
</plist>
與空間的應用程序的命令行所以這裏最大的問題是 - 這個應用程序的名稱已被全球使用,我不能改變它 - 我該如何解決這個問題,以便我可以做這些命令行構建?
IMNHO:Apple在xcode中的非posix合規性方面犯了一個很大的錯誤。
任何建議表示讚賞。
蘋果的迴應:「iOS應用程序的代碼簽名只有在使用Xcode應用程序構建和簽署應用程序時才受DTS支持,它們不是支持使用xcodebuild簽署iOS應用程序的工作流程。
所以他們不支持自己的命令行工具......
哪個版本的Xcode您使用的是和你有最新版本的命令行工具?我只是用名爲'Test App.app'的空間設置了一個測試應用程序,並且能夠運行您遇到問題時的權利檢查。我在Xcode 4.6.2上使用最新的命令行工具。 – 2013-04-29 08:42:02
現在有效。在夜間對我而言沒有真正的改變,可能是刪除並重新拉我的預置描述文件做了。 – 2013-05-15 22:07:49