基于app id发送latitude and longitude并将时间发送到服务器并使用alram manager
答案 0 :(得分:3)
使用LocationManager请求位置更新。
NetworkListener listener = new NetworkListener()
locationManager.requestLocationUpdates (LocationManager.NETWORK_PROVIDER, 30000, 0, listener);
Inside Listener onLocationChanged你可以编写代码来发送lat,lng到php webservice。
class NetworkListener implements LocationListener{
public void onLocationChanged(Location location) {
// TODO Auto-generated method stub
double latitude = location.getLatitude();
double longitude = location.getLongitude();
// write code to send lat, lng to php webservice.
}
public void onProviderDisabled(String provider) {
// TODO Auto-generated method stub
}
public void onProviderEnabled(String provider) {
// TODO Auto-generated method stub
}
public void onStatusChanged(String provider, int status, Bundle extras) {
// TODO Auto-generated method stub
}
}
答案 1 :(得分:0)
您可以使用每3分钟后触发的计时器任务。请参考以下代码
final Handler handler = new Handler();
timer = new Timer();
TimerTask doAsynchronousTask = new TimerTask() {
@Override
public void run() {
handler.post(new Runnable() {
public void run() {
/// send lat and long here to your server
}
});
}
};
timer.schedule(doAsynchronousTask, 0, 300000)
答案 2 :(得分:0)
首先请检查Android开发者网站上的Scheduling Repeating Alarms。
并检查以下答案here它解释了如何每5秒运行一次。
最后检查以下tutorial,它解释了如何运行服务(在您的情况下调用后端)。
希望能帮助。