1

Xcode で資格を構成しましたが、コンパイルされたアプリ バンドルに入れられません。追加の手順を実行する必要がありますか?

私は OS X の「開発者 ID」で署名されたアプリケーション ( AppStore 用ではない) を作成しており、親アプリと設定を共有する拡張機能を実装できるようにするには、それらを同じアプリ グループに配置する必要があります。

Xcode でアプリ グループを構成したところ$Extension.entitlements$ParentApp.entitlementsplist に表示されます。

ただし、ビルドされた製品で$Extension.app/Contents/_CodeSignature/CodeEntitlementsは、構成したグループのない既定の資格ファイルに似ており、親アプリではこのファイルはまったく存在しません。

明示的な資格ファイルを使用して、アプリに再度署名することさえ試みました。

codesign --force --entitlements $ParentApp.entitlements -s "Developer ID" \
   Build/Products/Debug/$ParentApp.app

繰り返しますが、 には追加されません$ParentApp.app/Contents/_CodeSignature/CodeEntitlements

実行時に、親アプリと拡張機能は同じアプリ グループにあるようには見えません。それらの設定 ( )は、 の共有ディレクトリではなく[NSUserDefaults…initWithSuiteName:teamIdEtc]、 の独自のサブディレクトリに書き込まれます。~/Library/Containers~/Library/Group Containers

4

1 に答える 1

0

魔法のように、次の後に機能し始めました。

  • $(TeamIdentifierPrefix)実際の識別子に置き換えました
  • DerivedDataどこでもフォルダを削除し、すべてを再構築しました
于 2015-07-05T14:59:47.547 に答える