2011-09-13 28 views
6

私は特定の特定の地域にいる場合にのみ、ユーザーがアプリケーションにログインできるようにするWebアプリケーションを開発中です。私は、ユーザの位置を取得するために私のアプリの最初にlocationManager startUpdatingLocationと呼ばれ、/でログを有効または無効にします。CLLocationManager startUpdatingLocationとstartMonitoringSignificantLocationChanges

ユーザーがログオンしたら、私は

[locationManager stopUpdatingLocation]; 
[locationManager startMonitoringSignificantLocationChanges]; 

と呼ばれ、ユーザーアウト時に更新された位置を記録します地域外です。どちらの方法でも2つの方法が衝突しますか? (私はシミュレータのコードをテストしているので、場所は常に同じです)。

注:すべてが既存のJavascriptコードで処理されるため、didEnterRegionまたはdidExitRegionは使用しません。私はユーザーの現在の場所でのみ送信しています。

+0

これらは衝突しません。私はそれをテストしました。両方を安全に実行できます。 –

答えて

2

ユーザーがログインした後に、必要なものが実際に必要なものによって異なります。重要な変更を監視する場合、locationManagerは大きな変更についてのみ通知されます。 (新しい携帯電話タワー、Wi-Fiの変更、他のアプリコールの場所など)。それは一貫した基準ではありません。あなたが気にするのは、ログインしている人が気にかかっている場合は、重要なモニタリングをすべて一緒にやめてしまう可能性があります。それでも場所が必要な場合は、場所に関する散発的な更新を取得するだけで十分です。

+0

アプリケーションの開始時に 'startMonitoringSignificantLocationChanges'を使用しようとしたとき、アプリケーションに現在の位置を送信していなかったので、私は' startUpdatingLocation'で始めました。ユーザーがログインした後、ユーザーがログインすることを許可されている領域を出ていない限り、私は実際にその場所を使用しません。したがって、重要なモニターが機能すると思いました。実際のデバイスではまだテストしていません(何かを通知するために十分なモニタリングが必要です)。なぜなら、アップルが有料のiOS開発者として私を承認するのをまだ待っているからです。 – dee

+0

一般的に、あなたがあなたのアプリで活動しているなら、積極的に場所を監視するでしょう。重要な場所の監視は、場所の更新が頻繁に必要とされない場合です。背景のように。これは電池の寿命に役立ちます。 –

+0

特定のエリアだけを監視する必要がある場合は、地域の監視方法をお勧めします。私は現在それらを使用しており、彼らはかなりうまく動作します。 -startMonitoringForRegionを調べると、必要なものを見つけることができます。 –

関連する問題