如何在后端每隔3分钟向php web服务发送android设备的纬度经度

时间:2015-12-23 05:41:58

标签: java android

基于app id发送latitude and longitude并将时间发送到服务器并使用alram manager

3 个答案:

答案 0 :(得分:3)

  1. 使用LocationManager请求位置更新。

    NetworkListener listener = new NetworkListener()
    
    locationManager.requestLocationUpdates (LocationManager.NETWORK_PROVIDER, 30000, 0, listener);
    
  2. 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)

用户AlarmManager

首先请检查Android开发者网站上的Scheduling Repeating Alarms

并检查以下答案here它解释了如何每5秒运行一次。

最后检查以下tutorial,它解释了如何运行服务(在您的情况下调用后端)。

希望能帮助。