使用Gps获取纬度和经度

时间:2015-06-11 04:50:28

标签: android gps

请有人给我代码, {  每5分钟使用gps获取经度和纬度,  并使用Json Parsing将该纬度和经度发送到Web网址

如果您关闭该应用程序,我们也可以获得纬度和经度

}

2 个答案:

答案 0 :(得分:0)

如果您希望即使您的应用程序未打开也要运行代码,那么您需要services

service在后​​台运行,如果您需要纬度和经度详细信息,则需要LocationListener

如果您需要应用程序每3分钟发送一次详细信息,则需要设置timer并获取lat和long,然后使用JSON发送。

如何创建服务

清单文件

<service
  android:name="MyService"
  android:icon="@drawable/icon"
  android:label="@string/service_name"
  >
</service> 

服务java文件

    public class MyService extends Service {

  @Override
  public int onStartCommand(Intent intent, int flags, int startId) {
    //TODO do something useful
      //write your repetition code here.
    return Service.START_NOT_STICKY;
  }

  @Override
  public IBinder onBind(Intent intent) {
  //TODO for communication return IBinder implementation
    return null;
  }
} 

调用您的服务

Intent i= new Intent(context, MyService.class);
// potentially add data to the intent
i.putExtra("KEY1", "Value to be used by the service");
context.startService(i); 

获取纬度和经度

  @Override
  public void onLocationChanged(Location location) {
    int lat = (int) (location.getLatitude());
    int lng = (int) (location.getLongitude());
    latituteField.setText(String.valueOf(lat));
    longitudeField.setText(String.valueOf(lng));
  }

所以,我建议你运行一个后台服务,它可以定期获取纬度和经度的详细信息,然后使用JSON发送它。

答案 1 :(得分:-2)

http://www.androidhive.info/2012/07/android-gps-location-manager-tutorial/

转到此链接以获取您的位置

你可以实现一个带有postdelay处理程序的循环来实现5分钟刷新率并在其中运行getLocation ...

使用SharedPreferenceManager将最后已知的lat和long存储到SD卡数据

https://mongskiewl.wordpress.com/2013/10/16/sending-json-data-from-android-to-a-php-script/

按照此方式发送JSON数据:)