timeout arguments out of range 的 crash
报错信息如下: timeout arguments out of range com.pl.voiceAnimation.VoiceAnimationUnit$2.run(VoiceAnimationUnit.java) 1 java.lang.VMThread.sleep(Native Method) 2 java.lang.Thread.sleep(Thread.java:1013) 3 java.lang.Thread.sleep(Thread.java:995) 4 com.pl.voiceAnimation.VoiceAnimationUnit$2.run(VoiceAnimationUnit.java) 5 android.os.Handler.handleCallback(Handler.java:733) 6 android.os.Handler.dispatchMessage(Handler.java:95) 7 android.os.Looper.loop(Looper.java:136) 8 android.os.HandlerThread.run(HandlerThread.java:61)
目前发现sleep参数小于0导致的。 解决办法: long sleepTime = Math.min(SET_VALUE_ANIMATION_FRAMES_INTERVAL, (setValueInterval == 0 ? SET_VALUE_ANIMATION_FRAMES_INTERVAL : (setValueInterval / SET_VALUE_ANIMATION_MAX_FRAMES))); if (sleepTime < 0) { sleepTime = 0; } Thread.sleep(sleepTime); 如果你有更好的办法,请及时同知我。