我正在尝试开发一个将数据从 sqlitedatabase 上传到 mysql 数据库的应用程序。
当互联网连接不可用时,数据仅保存到 sqlitedatabase,当连接可用时,它将 sqlitedatabase 中的数据上传到 mysql 数据库。
当我在我的应用程序上保存数据时,它会将其保存在 sqlitedatabase 中,我有将数据上传到 mysql 的代码,但我试图在网络连接可用时执行上传操作......希望我的问题现在更清楚了吗?
您可以使用广播接收器并等待操作ConnectivityManager.CONNECTIVITY_ACTION
看这个文件
当您收到ConnectivityManager.CONNECTIVITY_ACTION
来自您的应用程序的网络服务调用时,它将向您的 mysql 数据库发送数据。
前任:
broadcastReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
ConnectivityManager connectivity = (ConnectivityManager) context
.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo[] info = connectivity.getAllNetworkInfo();
//Play with the info about current network state
}
}
};
intentFilter = new IntentFilter();
intentFilter.addAction(ConnectivityManager.CONNECTIVITY_ACTION);
registerReceiver(broadcastReceiver, intentFilter);