关于二维码刷新[自己的小垃圾研究]

今天刚好在写一个在线二维码的刷新,每间隔1分钟进行刷新,android的机制导致了如果android App在后台运行的化,会一直走,这样用户的流量什么的完全耗不起,顾有了下面的小小研究。
导致流量走的比较快的原因如下:
1.访问数据的流量,这个和后端接口查询等有很大的关系,然而本宝并不能怎么样,这里接口端的兄弟可以优化下。
2.多次访问数据会导致流量使用比较多

作为android开发,研究点就在这里的访问次数了,有了方向,应该比较好容易优化了happy,因为本人使用的访问数据框架为 OKHTTp+RXAndroid等观察模式的数据访问框架,顾已经对,请求错误超时等做过一系列的处理。

1.本人首先用了一个简单粗暴的方法谢了一个计时器,这里并没有使用轮询访问

   /***
     * 倒计时
     */
    private CountDownTimer timer = new CountDownTimer(6000, 1000) {

        @Override
        public void onTick(long millisUntilFinished) {
            timerIsStart = true;
            Logs.d(TAG, "倒计时开始--------------->");
        }

        @Override
        public void onFinish() {
            Logs.d(TAG, "timer is onFinish");
            timerIsStart = false;
            timer.cancel();
            //完成之后
            getNetData();
        }
    };

2.拉取数据的方法

比较简单粗暴的方式,这里的getNetData();为本人的一个拉取数据的处理

   /***
     * 拉取网络数据
     */
    private void getNetData() {
        Logs.d(TAG, "getNetData()---------------->");
        Logs.d(TAG, "data is :" + bundle_data + ",id:" + bundle_data.getBusinessId());
        if (bundle_data != null && !StringUtlis.isEmpty(bundle_data.getBusinessId())) {
            String company = "", groupShortName = "", businessId = "", miniLogo = "";
            if (!StringUtlis.isEmpty(bundle_data.getCompany())) {
                company = bundle_data.getCompany();
            }
            if (!StringUtlis.isEmpty(bundle_data.getMiniLogo())) {
                miniLogo = bundle_data.getMiniLogo();
            }
            businessId = bundle_data.getBusinessId();
            groupShortName = bundle_data.getGroupShortName();
            NetService.getInstance().getScanDiscount(company, groupShortName, businessId, miniLogo, new Observer<CommResultBeanVo>() {
                @Override
                public void onSubscribe(Disposable d) {

                }

                @Override
                public void onNext(CommResultBeanVo value) {
                    timeStamp = System.currentTimeMillis();
                    ScanDiscountBean data = new ScanDiscountBean();
                    if (value != <
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值