我正在制作一个基本上是网络表单的应用。我填写并发送到一个网站进行处理。但我只希望它在连接到wifi时发送数据。
我正在考虑将数据放入tinyDB,然后立即运行wifi检查。如果连接,它将提交表单并删除db条目。我可能还会在应用程序加载和关闭时运行检查。重要的是我不要丢失数据。
有更好的方法吗?
答案 0 :(得分:2)
如果表单很小,你可能甚至不需要db,你可以只使用SharedPreferences http://developer.android.com/guide/topics/data/data-storage.html#pref,除非您有多行用户一次又一次地回答,否则这可能不是最佳解决方案
如果需要,可以使用一些网络检查代码
ConnectivityManager manager =(ConnectivityManager)activityOrContext.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo info = manager.getActiveNetworkInfo();
if(info==null || !info.isConnected()){
return false;// network not active
}
不确定你是否需要这个,你可能已经知道如何做到这一点或让它弄清楚
答案 1 :(得分:1)
看看我的问题How to respect network use settings in Android。一些答案演示了如何检查网络类型。
答案 2 :(得分:1)
您可以提示用户询问他是否要启用Wifi,然后您可以通过代码启用它。看一下WifiManager课程。