动态注册广播接收器必须有实例存在
静态不要实例存在
 
设置系统时区:
AlarmManager mAlarmManager =
(AlarmManager)getSystemService(Context.ALARM_SERVICE);
mAlarmManager.setTimeZone("GMT+08:00");
设置时区需要在manifest.xml中增加如下权限:
<!--
允许设置时区-->
<uses-permission
android:name="android.permission.SET_TIME_ZONE"
/>
 
package com.lzh.modeify;

import java.util.Calendar;
import java.util.Timer;

import android.R.integer;
import android.app.Service;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.os.IBinder;
import android.util.Log;

public class ZoneService extends Service {
    private static final String ACTION_DATE_CHANGED = Intent.ACTION_DATE_CHANGED;
    private static final String ACTION_TIME_CHANGED = Intent.ACTION_TIME_CHANGED;

private BroadcastReceiver TimerChangered = new BroadcastReceiver() {

@Override
        public void onReceive(Context context, Intent intent) {

Calendar c = Calendar.getInstance();// 可以对每个时间域单独修改

//            int year = c.get(Calendar.YEAR);
//            int month = c.get(Calendar.MONTH);
//            int date = c.get(Calendar.DATE);
            int hour = c.get(Calendar.HOUR_OF_DAY);
            int minute = c.get(Calendar.MINUTE);
            int second = c.get(Calendar.SECOND);

Log.v("time", Integer.toString(hour)+Integer.toString(minute)+Integer.toString(second));
        }
    };

private BroadcastReceiver stopServiceReceiver = new BroadcastReceiver() {

public void onReceive(android.content.Context context, Intent intent) {
            ZoneService.this.stopSelf();
            ZoneService.this.unregisterReceiver(stopServiceReceiver);
        };
    };

@Override
    public void onCreate() {

super.onCreate();
        Log.i("liujun", "后台进程被创建。。。");
        IntentFilter intentFilter = new IntentFilter("closeService");
        ZoneService.this.registerReceiver(stopServiceReceiver, intentFilter);
        // 服务启动广播接收器,使得广播接收器可以在程序退出后在后天继续执行,接收系统时间变更广播事件

ZoneService.this.registerReceiver(TimerChangered, new IntentFilter(
                Intent.ACTION_TIME_TICK));

}

@Override
    public int onStartCommand(Intent intent, int flags, int startId) {

Log.i("liujun", "后台进程。。。");
        return super.onStartCommand(intent, flags, startId);

}

@Override
    public void onDestroy() {

Log.i("liujun", "后台进程被销毁了。。。");
        super.onDestroy();
    }

@Override
    public IBinder onBind(Intent intent) {
        // TODO 自动生成的方法存根
        return null;
    }

}

 
    MainActivity.this.sendBroadcast(new Intent("closeService"));
 
    MainActivity.this.startService(new Intent(MainActivity.this,ZoneService.class));

android修改系统时区的更多相关文章

  1. android 修改系统的dialog样式

    android 修改系统的dialog样式 一.觉得自定义配置文件麻烦?那就来修改系统自定义XML文件来实现修改系统dialog的样式吧. 如果是在XML中样式:首先来说下样式.  在 Style.x ...

  2. Linux下修改系统时区

    使用 /etc/localtime 文件修改时区 先查看一下当前的时区,下面这个例子中使用 UTC 即世界统一标准时区.假设你可能需要改为美国西部标准时间,即太平洋时间. # date Thu Aug ...

  3. Centos7 修改系统时区timezone

    Centos7 修改系统时区timezone 注意:修改Linux系统的时区以后,再安装jvm,jvm默认会使用系统的时区.如果系统时区设置错误,安装jvm后,再修改系统的时区,但jvm的时区仍然用不 ...

  4. RedHat修改系统时区

    http://blog.itpub.net/27099995/viewspace-1370723/ 今天又被开发的说服务器时间异常,时差很大.我就纳闷了,上个星期都调整过的.去查看了一下. [root ...

  5. 转载:Linux下查看/修改系统时区、时间

    一.查看和修改Linux的时区 1. 查看当前时区 命令 : "date -R" 2. 修改设置Linux服务器时区 方法 A 命令 : "tzselect" ...

  6. (转)AIX修改系统时区的3种方法和AIX 时间问题(夏令时)

    原文:http://blog.csdn.net/fuwencaho/article/details/28267283 http://www.wo81.com/tec/os/aix/2014-04-30 ...

  7. android修改系统时系统黑屏时不进入休眠状态

    基于android4.4修改,在frameworks/base/services/java/com/android/server/power/PowerManagerService.java里,查看休 ...

  8. Centos7修改系统时区timezone

    第一步:查询服务器时间 [root@localhost ~]# timedatectl Local time: Sat 2018-03-31 01:11:46 UTC Universal time: ...

  9. Android 修改系统默认density

    如你所知在Anroid N 中,系统添加了多个级别的密度值供用户选择. 系统的默认的值就是 ro.sf.lcd_density 同时其他级别的默认值的大小基础也是以默认值为基础,然后乘以不同的比例得到 ...

随机推荐

  1. [记录]ASP.NET MVC 2.0 如何使用Html.RadioButtonFor?

    在MVC 2.0里支持强类型实体绑定,可以直接使用如 <%: Html.TextBoxFor(model => model.Description, new { @class=" ...

  2. java 25 - 1 网络编程的概述

    网络编程概述 计算机网络 是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统,网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统. ...

  3. fragment的切换(解决REPLACE的低效)

    在项目中切换Fragment,一直都是用replace()方法来替换Fragment.但是这样做有一个问题,每次切换的时候Fragment都会重新实列化,重新加载一次数据,这样做会非常消耗性能用用户的 ...

  4. sql问题集合

    1.sqlparameter @ 写在from前面

  5. webpack.optimize.CommonsChunkPlugin插件的使用

    方式一,传入字符串参数 new webpack.optimize.CommonsChunkPlugin('common.js'), // 默认会把所有入口节点的公共代码提取出来,生成一个common. ...

  6. HTML DOM 事件

    HTML DOM 事件 HTML DOM 事件 HTML DOM 事件允许Javascript在HTML文档元素中注册不同事件处理程序. 事件通常与函数结合使用,函数不会在事件发生前被执行! (如用户 ...

  7. 002商城项目:maven工程的测试以及svn的使用

    我们上一篇文章搭建了maven工程,这一篇文章我们就要测试这个工程. 1: 由于这个工程还没有页面,我们要首先建立一个页面.在建立页面的jsp的过程中,我发现了一个问题,我这个eclipse由于缺少J ...

  8. 苹果系统里面部署ASP.NET

    需要在global文件里设置一下 protected void Application_Start() { AreaRegistration.RegisterAllAreas(); FilterCon ...

  9. .NET MVC控制器分离到类库的方法

    在.ASP.NET MVC的开发中,我们创建完项目之后,ASP.NET MVC是已Model-Controller-View的形式存在的,在创建项目自动生成的内容上Model我们很容易分离成类库,所以 ...

  10. 前端见微知著番外篇:GIT舍我其谁?

    在上一篇中,我们讲到了利用纯UI的软件如何实现代码的提交.但是在MAC机器上,是没有turtoiseGit这类软件的,所以利用命令行的方式就是我们的首选了. 下面我们来描述两种主要的Git使用场景: ...