1

私は現在、位置情報サービスを使用するアプリケーションを持っており、iOS5以降を実行しているデバイスでうまく機能しています。ただし、4.3.xでは不整合の問題が発生しています。

問題:

アプリを初めてインストールして実行すると、通常の「このアプリに位置情報サービスの使用を許可する」ダイアログが表示され、を変更し[CLLocationManager authorizationStatus]ます。ただし、(ホーム画面から)アプリケーションをアンインストールしてアプリを再インストールすると、このプロンプトが再度表示されることはなく、このアプリがアンインストールされて新しく再インストールされたにもかかわらず、OSがこのアプリに対するユーザーの応答をキャッシュしました。iOSの他のすべてのバージョンでは、期待どおりにプロンプ​​トが表示され、が期待どおりに[CLLocationManager authorizationStatus]設定さkCLAuthorizationStatusNotDeterminedれます。

4.3では、アンインストールされているにもかかわらず、OSがアプリのオプションを記憶しているように見える理由を誰かに教えてもらえますか?現在この問題を修正するには、設定メニューからデバイスのすべての位置情報サービス設定を手動でリセットする必要があります。

情報やコードスニペットが必要な場合は、お問い合わせください。

4

1 に答える 1

0

これは4.3の制限であり、iOS4.3の任意のデバイスでアプリケーションを実行すると明らかです。

Appleは、これはバグではないと判断したに違いありません。これは、ユーザーがアプリケーションをアンインストールするときに奇妙なことに、ユーザーが特定のアプリの権限を選択したことをOSが記憶しているのはなぜですか。

有効な回避策はありません。ただそれと一緒に暮らす必要があります。

于 2012-12-06T17:17:05.183 に答える