【友盟+】开发者社区

按照间隔提示更新

push更新 发表于 2014-11-4 13:19:53 | |阅读模式

push更新
push更新 发表于 2014-11-4 13:19:53 | 显示全部楼层 |阅读模式
默认总是在程序启动的时候检测版本,浪费流量,那么加一些自己的小策略,比如按一定时间间隔更新:


    private static final String KEY_LAST_UPDATE_TIME = "umeng_last_update_time";


    /**
     * 自动更新,在main activity 中调用,此方法会请求服务器,检查是否有最新版本
     *
     * @param context
     *            当前Activity
     * @param internal
     *            控制自动更新请求的频率,单位毫秒,eg:update(context,24*60*60*1000) ,每天更新一次
     */
    public static void update(Context context, final long internal) {
        final Context mContext = context;
        if (mContext == null) {
            Log.i(TAG, "unexpected null Context");
            return;
        }


        SharedPreferences preference = getUpdateSettingPreferences(mContext);
        long lastUpdateTime = preference.getLong(KEY_LAST_UPDATE_TIME, 0);
        long now = System.currentTimeMillis();


        if ((now - lastUpdateTime) > internal) {
            update(mContext);
            preference.edit().putLong(KEY_LAST_UPDATE_TIME, now).commit();
        }
    }
这样调用 update( mContext, 24*60*60*1000 ); 就可以实现按天更新。





上一篇:不同的包名用了同一个key会有冲突么
下一篇:android自定义弹窗方法

您需要登录后才可以发帖 登录 | 立即注册

本版积分规则

发表主题

精彩推荐

【报错必看】微信您的应用签名不正确,请去微信后台确认
微信如果提示这个错误,请查看debug日志: 箭头所指的为你当前应用的签名及包名,然后打开你的微信后台
无法检测设备有效性
无法检测设备有效性
自定义事件有消息数量,却看不到详情
集成都是OK的,能看到自定义事件的消息数量。却看不到详细的详情。 总是显示数据无法加载,稍后重试。

关注我们

新浪微博
微信

欢迎关注友盟官方微博微信!

在线客服
返回顶部 返回列表