使用 android 移动应用程序在没有互联网连接时收集数据并在设备连接时上传数据

Collecting data when there is no internet connection and upload it when device has connection by using android mobile application

我正在 android studio 中实现一个移动应用程序,用于跟踪用户的位置。我将用户的位置收集在一个文件中,当位置跟踪停止时,我将位置一个一个地发送到数据库中。 我想实现一个 "forwarder" 以便能够在没有互联网连接时保留此文件的位置,并且当手机连接到互联网时自动将数据发送到数据库。 任何人都可以提供一些线索如何实现这个 "forwarder"?

我认为它应该很简单。 你可以有一个线程,例如每分钟检查一次连接状态,并将数据发送到有互联网连接的地方。

您可以尝试为此实现一个广播接收器。

  1. 在Manifest.file

    中注册一个BroadcastReceiver
    <receiver android:name=".MyBroadcastReceiver" > 
    <intent-filter>
    <action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
    </intent-filter>
    </receiver>
    
  2. 设置清单互联网权限

        <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
        <uses-permission android:name="android.permission.INTERNET"/>
    
  3. 实现接收class.

        public class MyBroadcastReceiver extends BroadcastReceiver {
        @Override
        public void onReceive(Context context, Intent intent) {
            // Do forwarding here
        }
        }