111

原创 2016年08月30日 15:09:31
<pre name="code" class="java">public class AlarmManager
{
    private static final String TAG = "AlarmManager";

    public static final int RTC_WAKEUP = 0;

    public static final int RTC = 1;

    public static final int ELAPSED_REALTIME_WAKEUP = 2;

    public static final int ELAPSED_REALTIME = 3;

    public static final long WINDOW_EXACT = 0;

    public static final long WINDOW_HEURISTIC = -1;

    private final IAlarmManager mService;//IAlarmManager接口
    private final boolean mAlwaysExact;

    //构造函数
    AlarmManager(IAlarmManager service, Context ctx) {
        mService = service;

        final int sdkVersion = ctx.getApplicationInfo().targetSdkVersion;
        mAlwaysExact = (sdkVersion < Build.VERSION_CODES.KITKAT);
    }

    private long legacyExactLength() {
        return (mAlwaysExact ? WINDOW_EXACT : WINDOW_HEURISTIC);
    }

    public void set(int type, long triggerAtMillis, PendingIntent operation) {
        setImpl(type, triggerAtMillis, legacyExactLength(), 0, operation, null);
    }

    public void setRepeating(int type, long triggerAtMillis,
            long intervalMillis, PendingIntent operation) {
        setImpl(type, triggerAtMillis, legacyExactLength(), intervalMillis, operation, null);
    }

    public void setWindow(int type, long windowStartMillis, long windowLengthMillis,
            PendingIntent operation) {
        setImpl(type, windowStartMillis, windowLengthMillis, 0, operation, null);
    }

    public void setExact(int type, long triggerAtMillis, PendingIntent operation) {
        setImpl(type, triggerAtMillis, WINDOW_EXACT, 0, operation, null);
    }

    public void set(int type, long triggerAtMillis, long windowMillis, long intervalMillis,
            PendingIntent operation, WorkSource workSource) {
        setImpl(type, triggerAtMillis, windowMillis, intervalMillis, operation, workSource);
    }

    private void setImpl(int type, long triggerAtMillis, long windowMillis, long intervalMillis,
            PendingIntent operation, WorkSource workSource) {
        if (triggerAtMillis < 0) {
            /* NOTYET
            if (mAlwaysExact) {
                // Fatal error for KLP+ apps to use negative trigger times
                throw new IllegalArgumentException("Invalid alarm trigger time "
                        + triggerAtMillis);
            }
            */
            triggerAtMillis = 0;
        }

        try {
	    //定时任务实际上都由mService来完成,也就是说AlarmManager只是一个空壳  
	    //从上面的构造方法可以看出,这个mService是IAlarmManager类型的,而IAlarmManager是一个接口  
	    //如果了解AIDL应该知道IAlarmManager应该是一个AIDL接口  
            mService.set(type, triggerAtMillis, windowMillis, intervalMillis, operation,
                    workSource);
        } catch (RemoteException ex) {
        }
    }

    public static final long INTERVAL_FIFTEEN_MINUTES = 15 * 60 * 1000;

    public static final long INTERVAL_HALF_HOUR = 2*INTERVAL_FIFTEEN_MINUTES;

    public static final long INTERVAL_HOUR = 2*INTERVAL_HALF_HOUR;

    public static final long INTERVAL_HALF_DAY = 12*INTERVAL_HOUR;

    public static final long INTERVAL_DAY = 2*INTERVAL_HALF_DAY;

    public void setInexactRepeating(int type, long triggerAtMillis,
            long intervalMillis, PendingIntent operation) {
        setImpl(type, triggerAtMillis, WINDOW_HEURISTIC, intervalMillis, operation, null);
    }

    public void cancel(PendingIntent operation) {
        try {
            mService.remove(operation);
        } catch (RemoteException ex) {
        }
    }

    public void setTime(long millis) {
        try {
            mService.setTime(millis);
        } catch (RemoteException ex) {
        }
    }

    public void setTimeZone(String timeZone) {
        try {
            mService.setTimeZone(timeZone);
        } catch (RemoteException ex) {
        }
    }
}



                

mysql远程连接数据库报111错误

mysql 远程连接debian8中的mysql数据库的,报错。 mysql -h IP -u root -p  Enter password:  ERROR 2003 (HY000): Can...
  • ssj901217
  • ssj901217
  • 2017年07月05日 19:39
  • 581

openstack登陆dashboard连接失败:[Errno 111] Connection refused

在centos中登陆openstack dashboard时出现错误: 利用 # service openstack-nova-api status 命令查看nova-api进程的状态时发现错...
  • x_i_y_u_e
  • x_i_y_u_e
  • 2015年01月31日 20:18
  • 3398

error: [Errno 111] Connection refused

hadoop安装篇
  • shushugood
  • shushugood
  • 2016年04月17日 10:43
  • 5868

解决 ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (111)

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (111) 由于...
  • wang02011
  • wang02011
  • 2011年12月14日 21:00
  • 1293

socket error:[Errno 111]Connection refused 问题

1.确保服务端在相应的端口监听; 2.关闭防火墙(ubuntu下面的命令:sudo ufw disable); 3.而且server端要 sudo 运行; UNP第一个小程序(有些异常没...
  • vonzhoufz
  • vonzhoufz
  • 2014年03月03日 18:17
  • 15755

Metasploit2: tcp port 111 – rpcbind

Metasploit2: tcpport 111 – rpcbind RPC& portmapper (111 TCP + other UDP) portmapper服务是这样工作...
  • u011130746
  • u011130746
  • 2014年07月29日 23:38
  • 1627

MongoDB启动时出现errno:111 Connection refused错误的解决

问题描述: MongoDB启动时报下列错误 [root@MongoDB ~]# mongo MongoDB shell version: 2.6.1 connecting to: ...
  • cuigaochong
  • cuigaochong
  • 2016年09月24日 16:40
  • 3949

nova Errno: [Errno 111] Connection refused 错误

在部署单节点 nova-network FlatDHCP模式时,anzhuang
  • wangtaoking1
  • wangtaoking1
  • 2014年04月18日 11:09
  • 5617

关于CONVERT(varchar(10),date,111)函数最后一个参数说明

这个sql函数,第一个参数代表要截取的长度,第二个代表数据库的字段,最后一个参数,也就是111代表那个,具体字段对应说明如下:- 0 or 100 (1, 2)  Default mon dd yyy...
  • catvi
  • catvi
  • 2007年07月03日 10:14
  • 2240

OGG-01223 TCP/IP error 111

今天一套11.2.0.4RAC 的一个节点由于仲裁盘原因offline导致部署在该节点上的ogg出现问题。 该节点正常后启动ogg发现抽取、复制进程都ok,所有投递进程都abend。 --------...
  • huoshuyinhua
  • huoshuyinhua
  • 2017年06月13日 14:13
  • 795
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:111
举报原因:
原因补充:

(最多只允许输入30个字)