2017-07-04 5 views
0

マップ上のいくつかの場所を表示するためにアプリケーションが実行されているときにユーザーの場所を使用するモバイルアプリを持っています(現在はGoogleマップです)。iOSデバイスがいくつかのマップポイントの近くにいるときのアクションを実行

新しい機能を追加したい - バックグラウンドのAppは、デバイスがマップポイントの近くにあるか、事前定義されたエリアに入ったときにユーザーに通知する必要があります。

  1. どうすればできますか?さまざまなアプローチがありますか?
  2. どこから出発するのですか?
  3. 私のポイントがサーバーに保存されている場合はどうすればいいですか?最初にデバイスに保存する必要がありますか?また、アプリがメモリにないときに新しいマップポイントを追加できない場合はどうすればよいですか?
  4. このような機能を作成する上で最も難しいのは何ですか?

p.s.私はRayのジオフェンシングのチュートリアルについて知っていますが、そのような機能の落とし穴についても、異なるアプローチや落とし穴がありますか?

+1

可能な重複[iOSの9のためのジオフェンシングを実装するには?](https://stackoverflow.com/質問/ 34700210 /実装方法 - ios-9のためのジオフェンシング) – Desdenova

答えて

2

まず、バックグラウンドモードで(ターゲット - >機能)あなたは、そのユーザは、いくつかの場所exapmleに近い検出するために、あなたの場所の更新機能にいくつかのコードを記述する必要があります。

func locationManager(_ manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) { 
      if let userLocation = locations.first { 
       if location.coordinate.langtitude <= <some value> || 
        location.coordinate.langtitude >= <some value> || ... { 
         runAction() 
        } 
       } 
    } 

    func runAction() { 
     //show local notification here 
    } 
関連する問題