26

コマンドラインツールを含むアプリを作成しました。アプリのサンドボックスを有効にして、機能することをテストしました。また、アプリとコマンドラインツールの両方にコード署名しました。

しかし、アプリをiTunesにアップロードすると、「アプリサンドボックスが有効になっていません」というメールが届きました。

どうやら私は値com.apple.security.app-sandboxを持つキーのエンタイトルメントファイルを設定trueし、実行可能ファイルをリストする必要があります:/Contents/MacOS/myApp/contents/Frameworks/x86/myCommandLineTool

Xcodeでサンドボックスを有効にしたと確信しているので、問題はコマンドラインツールにあると思いました。

コマンドラインツールでサンドボックスを有効にするにはどうすればよいですか?または、ツールを配置する必要がある特定のフォルダーはありますか?どんな提案も歓迎します-私は数日間それによって悩まされてきました。

4

1 に答える 1

27

私は同じ問題を抱えていました、そしていくつかの検索、試行とエラーの後、これは私のために働いたものです:

  1. エンタイトルメントファイルを作成します-私にとっては、com.apple.security.inheritがYESに設定されていました。このファイルはxcode自体で作成しました。

  2. 次に、次のコマンドを使用してこのコマンドラインツールに署名します。

    codesign --entitlements ./entitlements.plist -s "copy & paste your certificate from keychain" ./commandlinetool   
    
  3. 念のため、次のコマンドを使用して確認してください。

    codesign --display --entitlements - ./commandlinetool   
    
  4. このツールはすでにプロジェクトに含まれています。コンパイル、アーカイブ、送信するだけです

ステータスは「レビュー待ち」になりました。

于 2012-08-25T08:08:57.123 に答える