最近のアクセス:
Geolocation 追跡を使用する方法

デバイスの位置を追跡するアプリケーション (GPS の有効化が必要) を作成するために、Maps 外部オブジェクトにより以下のメソッドが提供されています:

たとえば、3 つのイベント (ボタン) を使用して、以下のように Panel オブジェクトを定義できます:
最初のボタンで追跡が開始されます:
Event 'StartTracking'
    Composite
        Maps.ClearLocationHistory()
        Maps.StartTracking(60,100,"",0)
        msg("Tracking Started")
    EndComposite
EndEvent
2 つ目のボタンで追跡が終了します:
Event 'StopTracking'
    Composite
        Maps.EndTracking()
        msg("Tracking Stoped")
    EndComposite
EndEvent
3 つ目のボタンは GetLocationHistory method を使用して位置履歴を取得します: 
Event 'SetPositionsInMap'
    &locationCollection = Maps.GetLocationHistory(&Today)
Endevent
取得したコレクション (&locationCollection) は [ Control Type ] プロパティ = Maps としてグリッドに表示されます。
追跡システムはバッテリーの点で高コストになる可能性があるため、追跡処理はアプリケーションの特定のニーズに基づいて開始および終了する必要があります。
: Apple では、バックグラウンドトラッキングを行うために、 [ Background Modes ] プロパティに値 "location" を含める必要があります。

追跡 - サイレント通知

上記のメソッドでは、コントロールとデータ登録がデバイスのみから実施されます。デバイス位置の登録はデバイス自身によって中断される場合があります。たとえば、ユーザーが GPS の起動を許可していない、あるいはスマホのアプリケーションが停止しているなどの原因が考えられます。
このような場合に備えて、配送業者が集中管理する、通知機能を利用した追跡メカニズムが便利です。サーバーがデバイスにサイレント通知を送信してデバイスを起動し、デバイスが現在位置を返します。
詳細については、以下を参照してください: ネイティブ モバイル アプリケーションのサイレント通知を使用して追跡する方法

ショーケース

Showcase - GeoCity: このナレッジベースでは、MotoDriverApp パネルで追跡を使用しています。

参考情報

HowTo: Solve Geofencing with GeneXus
Maps 外部オブジェクトから GetLocation メソッドを使用する方法


サブページ
Created: 15/01/07 22:46 by Admin Last update: 24/12/18 01:21 by Admin
カテゴリ
Powered by GXwiki 3.0