私のアプリは位置情報サービスを使用しています。シミュレーターが位置情報サービスへのアクセス許可を要求するときにユーザーが「許可しない」を押したときに何が起こっているかをテストするには(アプリの初回起動時)、シミュレーターをリセットする必要があります。これは、開発プロセスの最初に質問がallowで回答されたためです。したがって、これ以上の質問はありません。
「コンテンツと設定のリセット」を使用してシミュレータをリセットしても、最初に質問が返されることはありません。私が間違っているのは何ですか?
iOS 11以降の場合:
Hardware
> Erase All Contents and Settings...
以前のバージョンの場合:
Simulator
> Reset Content and Settings...
(シミュレータの以前のバージョンでは、トップメニューエントリラベルは「iOSシミュレータ」でした。
IOS 11以降の場合、トップシステムメニューに移動して、以下を選択する必要があります。
"ハードウェア"> "すべてのコンテンツと設定を消去..."
Snow Leopardを使用している場合:
Macのシステム設定(シミュレーターではなく)に移動し、[セキュリティ]セクションを選択します。位置情報サービスの前にある「警告をリセット」ボタンを押すと、設定は完了です。
アップルは言う
シミュレーターのユーザーコンテンツと設定を工場出荷時の状態に設定し、インストールしたアプリケーションを削除するには、iPhoneシミュレーター>コンテンツと設定をリセットを選択します。
便利で便利なツール。優れたFastlaneコマンドラインツール( https://github.com/fastlane/snapshot )
snapshot reset_simulators
reset_simulatorsはすべてのシミュレーターを削除し、最新のiOSバージョン専用の新しいシミュレーターを作成しています。他のバージョンのシミュレーターを再作成する場合は、-ios引数の後にバージョンのリストを指定する必要があります。
snapshot reset_simulators --ios 8.3,8.4,9.0,9.1
Simulator 10.0で「すべてのコンテンツと設定を消去」を試みましたが、うまくいきませんでした。私にとってうまくいったのは、シミュレーター10.0に設定アプリが組み込まれていることです。リセットするには次の方法があります。
その後、認証ステータスは.notDeterminedにリセットされます。
または、simctl
を選択して、コマンドラインでiOSシミュレーターを管理できます。
$ xcrun simctl erase all
は、すべてのシミュレーターのすべてのコンテンツを消去しすぎています。
詳細については、XCBlogからこのブログを読むことができます。 https://medium.com/xcblog/simctl-control-ios-simulators-from-command-line-78b9006a20dc