1

2 つのアプリケーションがあります。1 つは名前にスペースがあり、もう 1 つはありません。コマンド ライン ビルド プロセスでアプリケーションを実行しようとすると、アプリケーションが正常に機能しないという問題が発生します。

--- アプリケーションのコマンド ラインでスペースを使用して資格を確認しようとすると、次のようになります。

>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 アプリケーションに署名するためのワークフローはサポートされていません。」

そのため、独自のコマンド ライン ツールをサポートしていません...

4

1 に答える 1

0

すべてのプロビジョニング プロファイルを削除することでこれが解決された可能性がありますが、運が悪かった前回の前に何度か削除しました。驚いたことに、自動ビルドで一晩解決しました...

于 2013-05-15T22:09:16.110 に答える