Androidマップアプリケーションの配列リストにいくつかの場所の更新を収集しようとしています。毎分収集された位置情報の更新をローカルサーバーに保存したいと思います。これどうやってするの。これを行うためのAndroidの機能はありますか?
2 に答える
0
Service
UIのないアクティビティのようなを使用します。Service
1分ごとに実行し、緯度と経度の形式で位置の更新を停止します。次に、
Non-UI
スレッドを使用して位置データをデータベースに保存します。例:SQLite
サービスの場合:
http://developer.android.com/guide/components/services.html
単純なスレッドを作成する場合:
Thread t = new Thread(new Runnable(){
public void run(){
// Here is the code that will do your job every minute.
// Please use a while loop with a loop control factor,
// and sleep mechanism to let your thread sleep for a minute.
// for sleep, instead of using Thread.sleep(timeout) better use
//TimeUnit.SECONDS.sleep(timeout);
}
});
t.start();
于 2012-09-17T17:23:48.527 に答える
0
NETWORK_PROVIDERまたはGPS_PROVIDERを使用して、現在の場所をグレーディングします。
どちらの場合も、タイムスタンプを取得し、アプリによって距離ベースの位置情報が頻繁に更新されるようにするために、以下にリストされている方法があります。
場所の変更は、requestLocationUpdates()で登録されたLocationListenerによって呼び出されるOnLocationChange()によって検出されます。
public void requestLocationUpdates (String provider, long minTime, float minDistance, LocationListener listener)
minDistanceが0より大きい場合、デバイスがminDistanceメーターで移動した場合にのみ、位置情報がブロードキャストされます。通知をできるだけ頻繁に取得するには、両方のパラメーターを0に設定します。
于 2012-09-17T18:06:55.123 に答える