• 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!---");
                }
    
            }

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



  • 相关阅读:
    LINUX服务器上新增用户名
    Mac OS X 常用快捷键
    leetcode 学习心得 (2) (301~516)
    leetcode 学习心得 (1) (24~300)
    C 实现简单的栈
    Hbase压力测试
    hadoop,yarn和vcpu资源配置
    ubuntu14通过trove/redstack安装openstack环境
    fedora 使用trove的redstack 安装openstack环境
    fedora22 mysql安装
  • 原文地址:https://www.cnblogs.com/lotusve/p/2525371.html
Copyright © 2020-2023  润新知