首页 > 代码库 > Android -- 闹钟服务的使用(单次闹钟)

Android -- 闹钟服务的使用(单次闹钟)

1. 效果图

2. 实现代码

public class firstActivity extends Activity {        private static final String AM_ACTION = "iflab.test.AM_ACTION"; // ACTION常量    @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.main);                        Button btn1 = (Button) findViewById(R.id.button1); // 获取对象        final AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);// 获取系统服务        Intent intent = new Intent(); // Intent对象        intent.setAction(AM_ACTION); // 设置Action        intent.putExtra("message", "该下班啦!"); // 传递字符串        final PendingIntent pendingIntent = PendingIntent.getBroadcast(                firstActivity.this, 0, intent, 0);        final long time = System.currentTimeMillis(); // 设置当前时间        btn1.setOnClickListener(new View.OnClickListener() { // 监听器            @Override            public void onClick(View v) {                // TODO Auto-generated method stub                alarmManager.set(AlarmManager.RTC_WAKEUP, time, pendingIntent); // 设置单次闹钟提醒            }        });    }}
firstActivity
public class myReceiver extends BroadcastReceiver{    @Override    public void onReceive(Context arg0, Intent arg1) {        // TODO Auto-generated method stub        String str;        str="触发单次闹钟:"+arg1.getStringExtra("message");        Toast.makeText(arg0, str,Toast.LENGTH_LONG).show();        //显示    }}
myReceiver
  <receiver android:name="myReceiver">            <intent-filter>                <action android:name="iflab.test.AM_ACTION"/>            </intent-filter>        </receiver>
配置文件

 

Android -- 闹钟服务的使用(单次闹钟)