背景
追跡アプリケーションを作成したい。ユーザーは目的地として 1 つのポイントを選択できます。ユーザーが開始ボタンを押すと、アプリケーションはユーザーの現在の場所を特定し、ユーザーが選択した目的地で終了します。
問題
マップ上に 2 つのマーカーを配置することができました。1 つは目的地、もう 1 つはユーザーの現在地です。ユーザーが移動すると、現在の場所のマーカーを移動することに問題があります。つまり、ユーザーが移動を開始したら、マーカーをマップ上で移動させたいということです。これは、ユーザーが目的地に到着するまで、アプリケーションがユーザーの位置を検出することを意味します。
コード
私は現在、機能を使用していますrequestLocationUpdate
。しかし問題は、それがどのように機能するか、私にはよくわからないということです。私が見た例はほとんどありませんが、すべての例を理解しているわけではありません。
ここに私の requestLocationUpdate がどのように見えるかがあります:
public void locupdate() {
locationManager = (LocationManager) mContext
.getSystemService(LOCATION_SERVICE);
Intent intent = new Intent(mContext, this.getClass());
PendingIntent pi = PendingIntent.getBroadcast(mContext, 0, intent,
PendingIntent.FLAG_UPDATE_CURRENT);
locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 45000,5,pi);
}
メソッドを呼び出す方法は次のとおりです。
public void updateCurrentLocation(View v){
gps.locupdate();
}
updateCurrentLocation はボタンの android:onClick です。ユーザーがボタンを押すと、アプリケーションは 45 ごとに場所の更新を開始します。これは私が期待していることです。それをマーカーに実装し、マーカーの位置を 45 秒ごとに変更する方法は? requestLocationUpdates
私がまだ混乱しているもう1つのことは、メソッドが実際にどのように機能するかです.
それで、誰でもこの問題を解決するのを手伝ってもらえますか? 私は正しい道を進んでいますか、それとも使用すべき他の方法があります。前もって感謝します。