这个要看你启动是什么时候的了,比如你启动刚好是整点,线程sleep一次 1000*60*5  5分钟 1个小时刚好12次,如果不是整点启动的 那就不一定准了。
你这个线程是放在Service里面的么?  CPU在繁忙的时候 可能调度不准确

解决方案 »

  1.   

    这估计只有debug线程看了,看看什么原因造成延迟
      

  2.   

    请问用什么方法?
    我觉得这方法也不对,不能用thread.sleep,我准备借助SharedPreferences,在每天闹钟第一次播放的时候,记录一下,然后再判断当前播放次数和总次数,最后来决定来做业务!
      

  3.   

    谢谢,可能是我方法不对。在android里,锁屏状态达到几个小时后,有些手机使用sleep方法会不准!
      

  4.   


    我准备换种方式处理,可能是这种处理方式不对。我借助SharedPreferences来做这件事!
      

  5.   

    同楼上的意见,推荐用Timer 定时器来做试试,方便很多的。
      

  6.   

    请问用什么方法?
    我觉得这方法也不对,不能用thread.sleep,我准备借助SharedPreferences,在每天闹钟第一次播放的时候,记录一下,然后再判断当前播放次数和总次数,最后来决定来做业务!
    还是用service比较好,就像你说的,在锁屏待机的情况下,后台必须实时监控。而service就可以常驻,通过broadcast接收消息,配合timer,timertask进行
      

  7.   

    请问用什么方法?
    我觉得这方法也不对,不能用thread.sleep,我准备借助SharedPreferences,在每天闹钟第一次播放的时候,记录一下,然后再判断当前播放次数和总次数,最后来决定来做业务!
    还是用service比较好,就像你说的,在锁屏待机的情况下,后台必须实时监控。而service就可以常驻,通过broadcast接收消息,配合timer,timertask进行谢谢,我今天用SharedPreferences来保存播放数量,然后根据播放数量来判断,是否启用下一个闹钟!