zoukankan      html  css  js  c++  java
  • android 监听系统时区变化,日期变化,时间变化

    1.  监听时区变化:

    配置:

    <receiver android:name="com.gionee.ui.DateTimeReceiver">
                <intent-filter>
                    <action android:name="android.intent.action.TIMEZONE_CHANGED"/>
                </intent-filter>
            </receiver>
    private static final String ACTION_TIMEZONE_CHANGED = Intent.ACTION_TIMEZONE_CHANGED;
    
    @Override
        public void onReceive(Context context, Intent intent) {
            if (DBG) {
                Log.d(LOG_TAG, "---onReceive() start!---");
            }
    
            String action = intent.getAction();
    
            if (ACTION_TIMEZONE_CHANGED.equals(action)) {
    
                if (DBG) {
                    Log.d(LOG_TAG, "---TIMEZONE_CHANGED!---");
                }
    
            }
    
            if (DBG) {
                Log.d(LOG_TAG, "---onReceive() end!---");
            }
        }

    2.  监听日期变化

    配置:

    <action android:name="android.intent.action.DATE_CHANGED" />
    private static final String ACTION_DATE_CHANGED = Intent.ACTION_DATE_CHANGED;
    
    @Override
        public void onReceive(Context context, Intent intent) {
            if (DBG) {
                Log.d(LOG_TAG, "---onReceive() start!---");
            }
    
            String action = intent.getAction();
    
            if (ACTION_DATE_CHANGED.equals(action)) {
    
                if (DBG) {
                    Log.d(LOG_TAG, "---DATE_CHANGED!---");
                }
    
            }
            
            if (DBG) {
                Log.d(LOG_TAG, "---onReceive() end!---");
            }
        }

    3.  监听时间变化

    配置:

    <action android:name="android.intent.action.TIME_SET" />
    private static final String ACTION_DATE_CHANGED = Intent.ACTION_DATE_CHANGED;
        private static final String ACTION_TIME_CHANGED = Intent.ACTION_TIME_CHANGED;
    
    @Override
        public void onReceive(Context context, Intent intent) {
            if (DBG) {
                Log.d(LOG_TAG, "---onReceive() start!---");
            }
    
            String action = intent.getAction();
    
            if (ACTION_DATE_CHANGED.equals(action)) {
    
                if (DBG) {
                    Log.d(LOG_TAG, "---DATE_CHANGED!---");
                }
    
            }
    
            if (ACTION_TIME_CHANGED.equals(action)) {
    
                if (DBG) {
                    Log.d(LOG_TAG, "---TIME_CHANGED!---");
                }
    
            }
            
            if (DBG) {
                Log.d(LOG_TAG, "---onReceive() end!---");
            }
        }

    说明:

    1.配置<action android:name="android.intent.action.TIME_SET" />,可同时监听日期,时间的变化。
    2.单独监听时间变化的配置,目前不了解。
    3.配置中还可<action android:name="android.intent.action.TIME_TICK" />,代码中可
    private static final String ACTION_TIME_TICK = Intent.ACTION_TIME_TICK;
    
    if (ACTION_TIME_TICK.equals(action)) {
    
                if (DBG) {
                    Log.d(LOG_TAG, "---TIME_TICK!---");
                }
    
            }

    此功能目前还不清楚用法。



  • 相关阅读:
    java集合
    [编写高质量代码:改善java程序的151个建议]建议57 推荐在复杂字符串操作中使用正则表达式
    [编写高质量代码:改善java程序的151个建议]建议53 注意方法中传递的参数要求
    判断某一时间范围的方法
    c#读写xml文件
    冒泡排序
    C#使用正则表达式检测数字 char 和韩文
    三角形面积公式
    unity 绘制三角形
    中缀转后缀表达式
  • 原文地址:https://www.cnblogs.com/lotusve/p/2525371.html
Copyright © 2011-2022 走看看