4

MapView を使用してアプリを開発しました。アプリが起動すると、コーディングなしで自分の場所にアクセス/使用することを許可するようにユーザーに求めます。これは許可として十分でしょうか、それともユーザーに具体的に尋ねて、アクセスの理由を提供する必要がありますか? 私が特にリクエストを行わず、MapView が私に代わってこれをリクエストすることを許可しない場合、Apple は送信時にアプリを拒否しますか?

4

3 に答える 3

11

ユーザーに許可を求める必要はありません。iOS が自動的に行います。

CLLocationManager オブジェクトに目的の文字列プロパティを設定して、システムが尋ねたときに、位置情報が必要な理由もユーザーに伝えることができるようにする必要があります。

locationManager.purpose = @"Location needed to show zombies that are nearby.";

位置情報を使用する許可を求めるシステム アラートでユーザーに表示されるように、呼び出す前にこのプロパティを設定します。startUpdatingLocation

デリゲートでは、メソッドlocationManager:didChangeAuthorizationStatus:を実装して、ユーザーがコア ロケーションを許可したかどうかを知ることができます。

于 2012-10-08T15:27:17.687 に答える
10

iOS 6の時点で、「目的」メッセージの正しい場所はInfoplistファイルにあります。

NSLocationUsageDescriptionプロパティは、ユーザーに表示するメッセージとともに設定する必要があります

Appleは優れたドキュメントを提供しています: https ://developer.apple.com/library/mac/#documentation/General/Reference/InfoPlistKeyReference/Articles/CocoaKeys.html

于 2012-12-14T19:39:03.913 に答える
0

アプリケーションが場所とマッピングに基づいている場合は特に、場所がアクセスされている理由をユーザーに伝える必要はありません。そうは言っても、パーミッションポップアップが表示される前に、データをどうするかをユーザーに正確に伝えて、より多くのユーザーが受け入れてくれることを願っています。

于 2012-10-08T13:28:45.343 に答える