猿问
回到首页
个人中心
反馈问题
注册登录
下载APP
首页
课程
实战
体系课
手记
专栏
慕课教程
如何在用户打开活动时发出网络请求,但前提是自上次请求以来已过去 24 小时?
我有一个活动发送网络请求以从 API 获取一些数据并将其保存在数据库中,但是每次用户打开活动时它都会发送请求,有没有办法仅在 24 小时过去后才发出请求自上次请求以来?
鸿蒙传说
浏览 76
回答 1
1回答
慕容708150
您可以将上次点击时间存储在共享首选项中,当用户打开该活动时,获取上次保存时间并与当前时间进行比较,如果它大于 24 小时,则点击您的 API,否则不执行任何操作。要像这样创建共享引用类:-public class AppPrefrences { private static SharedPreferences mPrefs; private static SharedPreferences.Editor mPrefsEditor; public static String getLastTime(Context ctx) { mPrefs = PreferenceManager.getDefaultSharedPreferences(ctx); return mPrefs.getString("lstTime", ""); } public static void setLastTime(Context ctx, String value) { mPrefs = PreferenceManager.getDefaultSharedPreferences(ctx); mPrefsEditor = mPrefs.edit(); mPrefsEditor.putString("lastTime", value); mPrefsEditor.commit(); }public static void clearAllData(Context ctx) { mPrefs = PreferenceManager.getDefaultSharedPreferences(ctx); mPrefsEditor = mPrefs.edit(); mPrefsEditor.clear(); mPrefsEditor.commit(); } } 设置你的时间这样做: -setLastTime(this, "current time");最后一次:-String lastTime = getLastTime(this);现在在 lastTime 你得到了你最后一次 api 命中时间现在得到当前时间并比较两个时间并执行你的代码。
0
0
0
打开App,查看更多内容
随时随地看视频
慕课网APP
相关分类
Java
继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续