AlarmManager系统服务

来源:互联网 发布:超滤膜端口连接 编辑:程序博客网 时间:2024/05/16 15:12

AlarmManager的常用属性
这里写图片描述

示例代码:

Activity

package com.lulu.lalarm;import android.app.AlarmManager;import android.app.PendingIntent;import android.content.Context;import android.content.Intent;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.View;public class MainActivity extends AppCompatActivity {    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);    }    public void startAlarmClick(View view){        //获取系统的闹钟服务        AlarmManager am = (AlarmManager) getSystemService(Context.ALARM_SERVICE);        //触发闹钟的时间, 毫秒为单位        long triggerTime = System.currentTimeMillis() + 2000;        Intent intent = new Intent(this, AlarmReceiver.class);        PendingIntent pendingIntent = PendingIntent.getBroadcast(this, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);        //只会执行一次的闹钟//        am.set(AlarmManager.RTC_WAKEUP, triggerTime, pendingIntent);        //指定时间重复执行        am.setRepeating(AlarmManager.RTC, triggerTime,50, pendingIntent);    }}

Receiver

package com.lulu.lalarm;import android.content.BroadcastReceiver;import android.content.Context;import android.content.Intent;import android.widget.Toast;public class AlarmReceiver extends BroadcastReceiver {    public AlarmReceiver() {    }    @Override    public void onReceive(Context context, Intent intent) {        Toast.makeText(context, "起床了", Toast.LENGTH_SHORT).show();    }}

xml布局文件

<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:paddingBottom="@dimen/activity_vertical_margin"    android:paddingLeft="@dimen/activity_horizontal_margin"    android:paddingRight="@dimen/activity_horizontal_margin"    android:paddingTop="@dimen/activity_vertical_margin"    tools:context="com.lulu.lalarm.MainActivity">    <Button        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:text="启动闹钟"        android:onClick="startAlarmClick"        android:id="@+id/button"        android:layout_alignParentTop="true"        android:layout_centerHorizontal="true" /></RelativeLayout>
0 0
原创粉丝点击