問題タブ [appstore-sandbox]
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.
iphone - Sandboxから本番StoreKitサーバーにいつ切り替えるか?
最近、アプリ内購入のあるアプリをiTunesに送信しました。サンドボックスサーバーの使用から本番サーバーの使用に切り替える必要があるのはいつですか?
今?またはそれが承認された後?
サーバー上のphpファイルでいつでも切り替えることができます。
StoreKitのドキュメントを見ましたが、実際にはわかりません。
ありがとう!
objective-c - アプリをサンドボックス化した後、NSSavePanel がファイルを保存しない
NSSavePanel
Mac App Store 用にアプリをサンドボックス化した後、文字列ファイルを保存するときに問題が発生しました。に設定com.apple.security.files.user-selected.read-write
しYES
、NSOpenPanel
正常に動作しています。
ただし、新しいファイルを保存しようとすると、すべてが正常に機能しているように見えますが、あるべき場所に保存されたファイルがありません....
これは、ファイルを保存するために使用しているコードです。
macos - Mac OSX コンソールにサンドボックス違反が表示されない
Mac AppStore で自分のアプリの更新を公開しようとしており、サンドボックス違反を確認したいと考えていました。エンタイトルメントを使用してアプリをコンパイルし、コード署名しました...実行中です。アクティビティ モニターは、サンドボックス環境を使用していることを確認します。
私の問題は、sandboxd からの行がコンソールに表示されないことです。ユーザーが選択したファイルの読み取り/書き込みアクセスを無効にしてファイルを開こうとするなど、意図的に違反をシミュレートしても、OpenPanel は表示されません (サンドボックスがブロックすると思います) が、コンソールにはそれを報告する行は表示されません。コンソールで「sandboxd」を検索すると、不明な POSIXSpawnInterface について何かを伝える行だけが表示されます。
私の疑問/質問は次のとおりです。
1) (削除されました!)
2)アプリが必要なことを何でもできる場合(MIDI入力を開くので、mach-globalアクセスの一時的な例外資格を含める必要がありました)、コンソールが違反を報告しない!?
3) アプリケーション ID (com.company.appname のように読み取られるもの) を介してシステムにパスを照会することにより、ファイル (アプリ バンドル) をアプリで検索し、NSBundle を使用してそのバージョンのみを取得します。これらの操作には、アプリケーション フォルダーへの読み取り専用ファイル アクセスのための一時的な例外資格が必要ですか (実際には、ユーザーがアプリをインストールした場所に依存するため、正確なパスはわかりません)。
提供できる提案を事前にありがとうございます。よろしく、ピーター。
objective-c - サンドボックス-killall操作は許可されていません
私は次のコマンドを実行する小さなMacアプリケーション(Obj-Cで)を書いています:
アプリをサンドボックス化すると(6月1日にサンドボックス化が必要になるため)、アプリが機能しなくなった場合にどうなるかを確認したいと思いました。次の応答がありました。
それを回避する方法はありますか?追加する特定の資格や、コマンドを実行する別の方法のように?
前もって感謝します。
macos - 'sandboxd:アプリ自体のバンドルに書き込むときにfile-write-createを拒否します
Mac App Storeで、いくつかのグラフィックを表示するプログラムを作成しました。時折、インターネットからこれらを更新します。ほとんどの人と同じように、私は今、自分のアプリをサンドボックス化する必要があります。
ほとんどすべてが機能していますが、更新するとファイルがアプリ自体のバンドルに保存され、「sandboxd:denyfile-write-create」で失敗します。
私はfopen(...、 "wb")を使用します
fopenに渡されるパスは次のとおりです。/Users/MyUser/Library/Developer/Xcode/DerivedData/MyApp-czuwveatgjffaggwqjdqpobjqqop/Build/Products/Debug/My.app/Contents/Resources/the_file.foo
パスは次を使用して作成されます。
私はここで明らかに間違ったことをしていますか?私のアプリはマルチプラットフォームなので、理想的にはfopen/etcを使い続けます。私が理解したように、アプリが他の場所で何もできないようにブロックされている場合でも、アプリは独自のバンドルへの書き込みを許可する必要がありますか?
ありがとう!
objective-c - サンドボックス化されたアプリの初回起動時にクラッシュする
サンドボックス化されたアプリのバンドル識別子を変更して実行しました。実行する前に実行時例外が発生しますmain()
。スタック トレースの先頭はruntime_init
. Xcode の外部でアプリを実行しようとしたところ、標準のクラッシュ レポート ダイアログが表示されました。表示された情報をスクロールすると、次のことに気付きました。
もう一回走るとすぐに、問題はありません。コンテナが存在することがわかります。ただし、コンテナーを削除するとすぐに、例外が再びスローされます。ユーザーがアプリを最初に使用したときにクラッシュすることは望ましくありません。どうすればこれを修正できますか?
アクセス許可を修復しようとしましたが、違いはありませんでした。また、Xcode が例外で中断するまでに、コンテナーが既に作成されていることにも気付きました。また、Craig Hockenberry はブログ投稿でこのエラーについて言及しましたが、ユーザーのホーム ディレクトリのシンボリック リンクを非難しました。私はそこにシンボリックリンクを持っていません(少なくともトップレベルにはありません、それは私が彼が意味していると思います)。
Twitter での追加の入力は、それがどこでもシンボリック リンクになる可能性があることを示唆しています。誰かがそれに対する回避策を発見しましたか? 例外の前にアプリケーションコードが実行されないため、それは難しいと思います。うまくいけば、マウンテンライオンはそれを修正します...?
objective-c - startAccessingSecurityScopedResource が成功を返さない
他の場所からダウンロードしたファイルを保存する場所をユーザーに尋ねる、サンドボックス化された Mac App Store アプリを開発しています。ユーザーからフォルダーを取得するための次のコードがあります(一部のエラーチェックを取り除きます):
ファイルをこのフォルダーに移動するときは、次のコードがあります。
startAccessingSecurityScopedResource は、NSOpenPanel から ULR を取得した直後、またはその後の実行で、NSUserDefaults に保存されているブックマーク データを使用して、成功を返さないことを示すコードがたくさんあります。
資格ファイルには、他の項目の中でも特に、次のものがあります。
このコードに何か問題がありますか?
macos - Mac App Store サンドボックス アプリは CGEventPost を使用できますか?
私が取り組んでいるアプリでは、CGEventPost
いくつかの重要なイベントを投稿するために使用していますが、「補助デバイスのアクセスを有効にする」システム設定をオンにしても、サンドボックスが有効になっていると機能しなくなったことに気付きました。
の使用を許可する権利はありCGEventPost
ますか? または、Mac App Store に提出されたアプリの重要なイベントを投稿する別の方法はありますか?
cocoa - Spotlight UI が Sandbox 内の Core Data 外部レコード ファイルを見つけられない
Record-Level Indexingを使用して、Spotlight を非ドキュメント ベースの Core Data アプリケーションに統合する手順に従いました。Spotlight インポーターはファイルを正しくインポートし、それらのレコードは を使用して見つけることができますmdfind "some string"
。
問題は、スポットライト ユーザー インターフェイス (右上の虫眼鏡) が、サンドボックス内で実行しているときにこれらのレコードを表示しないことです。
外部レコード ファイルは次の場所に作成されます。~/Library/Containers/[my app]/Data/Library/Caches/Metadata/CoreData/[my app]
私は何か間違ったことをしていますか?
macos - Mac OSX サンドボックスと公開鍵
~/.ssh
サンドボックス化された Mac OSX アプリケーションでユーザーの公開鍵ファイル (にある) にアクセスすることはできますか?