3

指定された小売店の近く (300 メートル以内) に到達したときにユーザーに警告するアプリケーションを作成しています。

APIを使用しています

[locationManager startMonitoringForRegion:grRegion desiredAccuracy:acc];

しかし、領域に出入りするためのイベントを取得できません。

私の質問は

  1. この API の精度。300 メートルの範囲を指定した場合、イベントを発生させるのは正確でしょうか。または、このイベントは、ユーザーがあるセルラー タワーから別のセルラー タワーに変更したときにのみ発生しますか?
  2. 300 メートル以内でイベントを取得できない場合、要件を実装するにはどうすればよいですか。

[locationManager startUpdatingLocation];PS:- API を使用するとバッテリーがすぐに消耗してしまうため、使用したくありません。

前もって感謝します。

4

1 に答える 1

4

、およびCLLocationManagerDelegateのロケーション コールバックをインターセプトするには、実装する必要があります。-didEnterRegion-didExitRegion

私はほぼ 1 年間、この正確な API を自分のアプリで使用してきましたが、バッテリーの消耗を最小限に抑えて非常に正確であることがわかりました。これが最善の方法で-startUpdatingLocationあり、必要なものを実装するにはさらに多くのコードが必要になるため、使用を検討しないと思います。バッテリーの影響は言うまでもありません。

デリゲートとメソッドを実装すると、準備完了です。シミュレーターで場所の変更を使用してテストすることもできます。実際の使用でテストする前に、うまく機能するようにしてください。

于 2012-06-04T16:20:49.440 に答える