2

アプリをサンドボックス化しています。私が電話すると、何の説明もなく-bookmarkDataWithOptions: includingResourceValuesForKeys:relativeToURL:error:受け取りnilます(エラーオブジェクトもnilそうです)。

  • アプリは正しく署名されています
  • これらの資格を作成しました:
<dict>
  <key>com.apple.security.app-sandbox</key>
  <true/>
  <key>com.apple.security.files.user-selected.read-write</key>
  <true/>
  <key>com.apple.security.network.client</key>
  <true/>
  <key>com.apple.security.files.bookmarks.app-scope</key>
  <true/>
</dict>
</plist>
  • 私はこのコードでブックマークを作成しています:
NSError *error = nil; 

// nextfile is NSURL and comes from NSOpenPanel

NSData *fileURLSecureData = [nextFile bookmarkDataWithOptions:NSURLBookmarkCreationWithSecurityScope 
                               includingResourceValuesForKeys:nil
                                                relativeToURL:nil
                                                        error:&error]; 

if (error) {
    ALog(@"Error securing bookmark %@", error);
}

fileURLSecureDataデバッガーでコードをステップ実行しているときにわかります。error 両方ともnil実行後です-bookmarkDataWithOptions: includingResourceValuesForKeys:relativeToURL:error:

私は何かが欠けているに違いない。フォーラムや記事を読んで再読しましたが、何が間違っているのかわかりません。

4

1 に答える 1

1

解決しました。問題は些細なことでした。Xcode で、Dev 構成の「Enable Entitlement」のチェックをうっかり外して、Release ビルドをチェックしたままにしました。

于 2013-02-07T18:06:57.897 に答える