問題タブ [entitlements]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
3993 参照

iphone - iPhone プロジェクトの Entitlements.plist について

Entitlements.plist について質問があります。アップルのドキュメントによると

Entitlements.plist を使用して iOS 機能を使用できます。デバッグ機能を追加する「Can be Debugged」/get-task-allow という名前の公開資格キーは 1 つしかありません。

アプリのプロジェクトに Entitlements.plist を追加していませんが、デバイスで実行されているアプリをデバッグできます。

誰かが理解を助けることができますか

a) Entitlements.plist とは何
ですか? b) なぜ必要なのですか?

0 投票する
3 に答える
4293 参照

ios - iCloud 資格が拒否されました

iCloud同期のサポートを追加するために、(既存の)アプリでしばらく作業しました。合計で、アプリの 3 つのバージョンがあります。

a) 通常の iPhone 版
b) lite (無料) iPhone 版
c) iPad 版

iCloud を使用して、コア データ ストレージを 3 つのバージョン/デバイス間で同期させたいと考えています。私は実装を手に入れました。私のデバイスに置いた開発バージョンはうまく機能しました。

昨日、iPhoneバージョンを提出することにしましたが、却下されました:

無効なコード署名資格 - アプリ バンドルの署名に、サポートされていない資格値が含まれています。com.apple.developer.ubiquity-container-identifiers エンタイトルメントの場合、配列の最初の値は、プロビジョニング プロファイルで Apple によって提供されたプレフィックスとそれに続くバンドル識別子サフィックスで構成される必要があります。バンドル ID は、iCloud コンテナー ID としての使用が許可されているいずれかのアプリまたは別のアプリのバンドル ID と一致する必要があります。

具体的には、[my app] のキー「com.apple.developer.ubiquity-container-identifiers」の値「[teamid].com.[myself].[somename]」はサポートされていません。

これらの識別子がどのように見えるべきかについては、まったくわかりません。このページ: https://developer.apple.com/library/ios/#documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/iCloud/iCloud.html#//apple_ref/doc/uid/TP40007072-CH5-SW1他のアプリのコンテナー ... 3 つのバージョンのアプリに 3 つのコンテナーを追加する必要がありますか? これまでのところ、project/targets/summary/entitlements の下で構成しました:

[x] iCloud キー値ストア: com.[自分].[somename]
iCloud コンテナー: com.[自分].[somename]

3 つのバージョンすべて (同じ識別子)。3 つのバージョンすべてが iCloud を介してコア データ ストレージ データベースを同期するには、正確に何を設定する必要がありますか?

0 投票する
1 に答える
1166 参照

ios - ユーザーごとにオフラインで利用できるようにアプリ内購入を保存する方法

iOS のキーチェーンは、ユーザーごとではなくアプリごとにデータを保存しているようです。

そのため、アプリ内購入に関する情報をキーチェーンに保存すると、現在ログインしている Apple ID に関係なく、これらの製品をデバイスで引き続き利用できます。

ネットワーク アクセスを要求して復元を実行し、利用可能な製品を確認することもできますが、ユーザーが開始しない復元を行うのは適切ではないようです。また、アプリはオフラインでも正しく機能するはずです。

私の質問は: アプリ内購入を購入した Apple ID 以外のユーザーが利用できないようにするにはどうすればよいですか?

0 投票する
0 に答える
287 参照

entitlements - runModal を呼び出したときに NSOpenPanel が表示されない

こんにちは、解決策を探すのに何時間も費やしましたが、何も見つからず、エラーを発見したため、外出して投稿しました。

誰もが作成しているのと同じ方法で NSOpenPanel を作成し、受け入れるファイルの種類を設定し、runModal を呼び出しました。プログラムは約 15 秒間フリーズし、モーダルがキャンセルされたかのように操作を続けました。問題は、アプリケーションでエンタイトルメントを使用していたことと、アプリのサンドボックス化を機能させるために、ユーザー ファイル アクセスを読み書きに設定する必要があったことです。プロジェクト設定でそれを設定したら、プログラムを再度実行し、NSOpenPanel を使用することができました。頑張ってください。

0 投票する
2 に答える
5464 参照

ios - エンタイトルメント'application-identifier'には、プロビジョニングプロファイルで許可されていない値があります

私は2年以上前にリリースされ、私たちとは関係のない第三者によって開発されたプロジェクトを与えられました。私はiOS5.0sdkを使用してxcode4.2で実行しており、これらを使用して他のいくつかのアプリを問題なく構築しています。このプロジェクトは古いプロジェクトであり、理論的には古いデバイスでも機能するはずなので、このプロジェクトの展開ターゲットは3.2.1に設定されています。

このプロジェクトはシミュレーターでは正常に実行されますが、デバイスでは実行されません。起動してスプラッシュ画面をロードし、他のアセットをロードしている間、xcodeでエラーが発生することなくクラッシュします。オーガナイザーでデバイスコンソールを使用すると、次のエラーが表示されることに気付きました。

このエラーは最初に数回表示され、次のメッセージも表示されます。

プッシュサービスを有効にして新しいプロビジョニングプロファイルを作成し、それに合わせてすべての証明書を実行しました。このエラーは最初のエラーの続きであると思われますが、よくわかりません。以前、この問題が発生したのは、プッシュ通知を構成せずにprovプロファイルに対して誤ってビルドしていたためでした。正しいプロファイルに切り替えると、これが修正されました。

紛らわしいのは、provプロファイルを削除し、xcode、Mac、およびデバイスを再起動しようとしたことです。問題は解決しません。plistのバンドル識別子がプロビジョニングプロファイルで使用されているものと一致することを確認しました。Entitlements.plistで何かを変更する必要があるかどうかわかりません。以前に作成したアプリケーションには、このファイルが含まれていませんでした(xcode 4で要件が削除されたと思われますか?)。現時点では、そのplistの唯一の行は「デバッグ可能」です。これは、trueとfalseの両方として試しましたが、どちらも機能していません。

私はここで以前の質問を調べましたが、運がありませんでした。プロビジョニングプロファイルに問題があった場合、スプラッシュ画面を表示することは言うまでもなく、構築することすら期待できませんでした。

問題が何であるかについて誰かが何か考えを持っていますか?

よろしくお願いします。

編集:関連する場合、私が使用しているデバイスはiOS5.0の3GSです。クラッシュは、xcodeから直接実行するか、アプリをipaでアーカイブしてデバイスにコピーするかに関係なく発生します。

0 投票する
2 に答える
2624 参照

app-store - iPhoneアプリのアーカイブを検証する

AppleのAppStoreにアプリを送信しようとしています。Xcode4.3.2。testflightappを介してアプリをユーザーに正常に送信し、ストアに送信したいと考えています。オーガナイザーを介してアプリを配布しようとすると、次の3つの検証エラーが発生します。

  • iPhone / iPod Touch:アプリケーションの実行可能ファイルに必要なアーキテクチャがありません。次のアーキテクチャの少なくとも1つが存在する必要があります:armv6
  • アプリケーションはコードサインの検証に失敗しました。署名が無効であるか、許可されていない資格が含まれているか、iPhone配布証明書で署名されていません。
  • アプリケーションから資格を抽出できません:(null)

この問題の解決に着手したときに最初のエラーが発生しただけであり、私が読んだすべてのことから、アプリストアに送信するときに資格は必要ないため、ボトムアップで作業する必要があると考えています。

Entitlements.plistがありました。削除してみました。作りたてで試してみました。[ターゲット]->[アプリ]->[概要]の[資格]セクションがオフ/クリアされています。[ターゲット]->[アプリ]->[ビルド設定]->[展開]セクションには、インストール所有者/グループと代替インストール所有者/グループの「Entitlements.plist」がリストされていました。これらを「スタッフ」のグループと「ペドストローム」の所有者にリセットしました。

次のような手順に従ってみました。次のアーキテクチャの少なくとも1つが存在する必要があります:armv7(-19033)アプリケーションを検証できません。-(null)無駄に。

どんな助けでも大歓迎です。

0 投票する
1 に答える
340 参照

ios - 資格が無効ですか?

私は現在、Xcodeの開発者プレビューで実行しています。そして、生成された「資格」ファイルがあることに気づきました。iOSアプリをビルドするたびに、次のエラーが発生します。

実行可能ファイルは無効な資格で署名されました。

なぜ私はこれを手に入れているのですか?生成されたエンタイトルメントファイルが原因だと思います。私は他の同様の質問も見てきましたが、それらはすべて私が行っていないアドホック配布について話しているのです。

誰かが以前にこの問題に遭遇しましたか?

0 投票する
1 に答える
280 参照

ios - IOS: appstore プロセスの entitlement.plist

ADHoc バージョンの場合、entitlement.plist で「get-task-allow」に「NO」の値を設定する必要があることはわかっていますが、AppStore プロセスの場合は? 何を設定すればよいですか?

0 投票する
1 に答える
1699 参照

ios - 開発者が署名したバイナリがディストリビューションとして再署名された場合、get-task-allowed は true のままです

開発モバイル プロビジョニング プロファイルで署名されたアプリケーションを生成するようにプロジェクトをセットアップするフローが必要です。これは、Xcode の便利なインターフェイスを使用して、後で AdHoc または AppStore 配布用に再署名できます。

問題は、開発プロビジョニング プロファイルによって署名されたアーカイブを作成するembedded.mobileprovisionと、 とアプリケーション バイナリ自体の両方に にget-task-allowed設定された仕様が含まれてtrueいることですが、Xcode の UI を使用してそのアプリケーションに再署名すると、結果embedded.mobileprovisionは(私が望むように)にget-task-allowed設定しfalseますが、バイナリ自体にはまだget-task-allowed設定が含まれていますtrue(私が望むものではありません)。

では、再署名に使用される配布プロファイルが最終的なアプリケーション全体に適切に適用されるように、アプリケーションを適切に再署名するにはどうすればよいでしょうか?

0 投票する
1 に答える
263 参照

database - サンドボックス化されたアプリ内のリソースにあるデータベースへの読み取り/書き込みアクセス許可を取得するにはどうすればよいですか?

MyApp.app/Contents/Resourcesフォルダーにデータベースがあります。少なくともサンドボックスアプリでデータを読み取りたいです。

これで、コンソールに「denyfile-write-data/Users/user/Desktop/MyApp.app/Contents/Resources/DB/app_db.db」がたくさんあります。

アプリのエンドユーザーの場所に依存したくないため、com.apple.security.temporary-exception.files.home-relative-path.read-writeを使用できません。

コンソールに警告が表示されますが、アプリは機能しています。アクセスを許可する資格はありますか、または最初の起動時にデータベースをコンテナにコピーする必要がありますか?