如何在没有互联网连接时将gps位置存储到android中的服务器上

时间:2016-04-15 06:09:20

标签: android android-gps

当有互联网连接时,我能够成功地将gps位置存储到服务器。但是当没有互联网连接时,我想将一些存储在移动设备中,然后需要推送到服务器。有可能吗?

2 个答案:

答案 0 :(得分:2)

我对您的问题的考虑是,当您有互联网时,您的数据正在保存,当您离线时,您也想要保存GPS位置,当互联网可用时,它应该与服务器同步。好吗?

为此,您可以创建一个SharedPreference,它可以在短时间内维护所有LatLng。并且还定义了一种可以搜索网络连接的方法。建立ASAP连接后,您可以将本地存储的值与服务器同步,并且在成功与服务器同步时不要忘记清除SharedPreference值。

下次请分享您的代码以便更好地理解.. 快乐的编码。

答案 1 :(得分:2)

创建一个扩展BroadcastReciever的类,如下所示:

    public class CheckConnectivity extends BroadcastReceiver{

    @Override
    public void onReceive(Context context, Intent arg1) {

        boolean isConnected = arg1.getBooleanExtra(ConnectivityManager.EXTRA_NO_CONNECTIVITY, false);
        if(isConnected){
              //Store your GPS Coordinates when no Connection
             Toast.makeText(context, "Internet Connection Lost", Toast.LENGTH_LONG).show();

        }
        else{

        //send your GPS Coordinates to Server
        Toast.makeText(context, "Internet Connected", Toast.LENGTH_LONG).show();


        }
       }
     }

并且不要忘记在你的Manifest中添加权限:

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
  <uses-permission android:name="android.permission.INTERNET" />