美文网首页
Android防止事件重复提交

Android防止事件重复提交

作者: weiggle | 来源:发表于2016-05-16 23:22 被阅读0次

    标签(空格分隔): 未分类


    Why?

    在做一些项目的时候,由于网络等原因,我们常常会造成重复提交事件,特别是做商城订单的时候,往往会生成重复的订单,此时就必须防止事件的重复.

    How?

    对于这类的事件,处理也特别简单,主要是在提交之前做个时间验证。我们可以设置个默认的时间,比如2000ms,当两次提交事件的时间差小于或等于的时候,我们认定为同一次时间,当大于2000ms的时候,我们认定为两次不同的事件。

    just do it!

    public class SingleClick{
      private static final int DEFAULT_TIME = 2000;
      private static long lastTime;
      
      public static boolean isSingle(){
        boolean isSingle ;
        long currentTime = System.currentTimeMillis();
        if(currentTime - lastTime <= DEFAULT_TIME){
            isSingle = true;
        }else{
           isSingle = false;
        }
        lastTime = currentTime;
        
        return isSingle;
      }
    }
    

    sample

    button.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    if(SingleClick.isSingle()){
                      //do something
                    }else{
                      //do otherthing
                    }
                }
            });
    

    相关文章

      网友评论

          本文标题:Android防止事件重复提交

          本文链接:https://www.haomeiwen.com/subject/gmzbrttx.html