Android timer and android Timer
Andorid timer encapsulation class
Public class TimerUtil {private static final String TAG = "TimerUtil"; private static Handler mTimeHandler = null; private static boolean mTimerMark = false; private static Runnable mTimerRunnable = null; private static int mUpdateTime = 0; private TimerUtil (){}; /*** start timer ** @ param doThing timer to handle tasks * @ param updateTime timer time * @ since V1.0 */public static void startTime (Runnable doThing, int UpdateTime) {if (null = doThing | updateTime <0) {return;} if (null = mTimeHandler) {mTimeHandler = new Handler (); mTimerRunnable = doThing; mUpdateTime = updateTime; mTimerMark = true;} if (mTimerMark) {mTimeHandler. postDelayed (mTimerRunnable, 0);} else {mTimeHandler. postDelayed (null, 0);}/*** start timer ** @ param doThing timer to handle tasks * @ param updateTime timer time * @ param mode Timer mode * @ si Nce V1.0 */public static void startTime (Runnable doThing, int updateTime, boolean mode) {if (null = doThing | updateTime <0) {return ;} if (null = mTimeHandler) {mTimeHandler = new Handler (); mTimerRunnable = doThing; mUpdateTime = updateTime; mTimerMark = true;} if (mTimerMark) {if (mode) {mTimeHandler. postDelayed (mTimerRunnable, 0);} else {mTimeHandler. postDelayed (mTimerRunnable, up DateTime) ;}} else {mTimeHandler. postDelayed (null, 0) ;}}/*** description of the method ** @ since V1.0 */public static void updataTime () {if (mTimerMark) {mTimeHandler. postDelayed (mTimerRunnable, mUpdateTime);} else {mTimeHandler. postDelayed (null, 0) ;}}/*** description of the method ** @ since V1.0 */public static void stopTime () {mTimerMark = false; if (null! = MTimeHandler) {mTimeHandler. removeCallbacks (mTimerRunnable); mTimeHandler = null ;}}/*** date format: yesterday, Today, July 15, August 24 * @ param ltime * @ param context * @ return * @ since V1.0 */public synchronized static String getTime_FormatTime_MMDD (long ltime, Context context) {String time = ""; Calendar dateCalendar = Calendar. getInstance (); dateCalendar. setTimeInMillis (ltime); Calendar targetCalendar = Calendar. getInstance (); targetCalendar. set (Calendar. HOUR_OF_DAY, 0); targetCalendar. set (Calendar. MINUTE, 0); if (dateCalendar. after (targetCalendar) {time = context. getString (R. string. today) + "" + time; return time;} else {targetCalendar. add (Calendar. DATE,-1); if (dateCalendar. after (targetCalendar) {time = context. getString (R. string. yesterday) + "" + time; return time;} String otherSDF = context. getString (R. string. mmdd); Date date = dateCalendar. getTime (); SimpleDateFormat sfd = new SimpleDateFormat (otherSDF); time = sfd. format (date); CLog. d (TAG, "getTime_FormatTime_MMDD time:" + time); return time;}/*** date format: yesterday, Today, July 15, August 24 * @ param ltime * @ param context * @ return * @ since V1.0 */public synchronized static String getTime_FormatTime_MMDDHHMM (long ltime, Context context) {String time = ""; Calendar dateCalendar = Calendar. getInstance (); dateCalendar. setTimeInMillis (ltime); int month = dateCalendar. get (Calendar. MONTH) + 1; int day = dateCalendar. get (Calendar. DAY_OF_MONTH); int hour = dateCalendar. get (Calendar. HOUR_OF_DAY); int minute = dateCalendar. get (Calendar. MINUTE); time = String. format ("% 02d: % 02d", hour, minute); Calendar targetCalendar = Calendar. getInstance (); targetCalendar. set (Calendar. HOUR_OF_DAY, 0); targetCalendar. set (Calendar. MINUTE, 0); if (dateCalendar. after (targetCalendar) {time = context. getString (R. string. today) + "" + time; return time;} else {targetCalendar. add (Calendar. DATE,-1); if (dateCalendar. after (targetCalendar) {time = context. getString (R. string. yesterday) + "" + time; return time ;}} time = String. format (Locale. ENGLISH, "% 02d-% 02d % 02d: % 02d", month, day, hour, minute); CLog. d (TAG, "getTime_FormatTime_MMDDHHMM time:" + time); return time;}/*** describes the method here ** @ return time format nnnn-mm-dd hh: mm: ss * @ since V1.0 */public synchronized static String getTime_nnnnyydd (long t) {if (t = 0) {return "";} Calendar cale = Calendar. getInstance (); cale. setTimeInMillis (t); int year = cale. get (Calendar. YEAR); int month = cale. get (Calendar. MONTH) + 1; int day = cale. get (Calendar. DAY_OF_MONTH); int hour = cale. get (Calendar. HOUR_OF_DAY); int minute = cale. get (Calendar. MINUTE); int second = cale. get (Calendar. SECOND); String time = String. format (Locale. ENGLISH, "% d-% 02d-% 02d % 02d: % 02d: % 02d", year, month, day, hour, minute, second); CLog. d (TAG, "getTime_nnnnyydd time:" + time); return time;}/*** describes the method here ** @ return time format nnnn-mm-dd hh: mm: ss * @ since V1.0 */public synchronized static String getTime_nnnnyydd (Calendar cale) {if (cale = null) {return "";} int year = cale. get (Calendar. YEAR); int month = cale. get (Calendar. MONTH) + 1; int day = cale. get (Calendar. DAY_OF_MONTH); int hour = cale. get (Calendar. HOUR_OF_DAY); int minute = cale. get (Calendar. MINUTE); int second = cale. get (Calendar. SECOND); String time = String. format (Locale. ENGLISH, "% d-% 02d-% 02d % 02d: % 02d: % 02d", year, month, day, hour, minute, second); CLog. d (TAG, "getTime_nnnnyydd time:" + time); return time ;}}