我是否需要使用intent.setClass明确指定类?

时间:2016-11-18 17:30:08

标签: android android-intent android-alarms

我想使用AlarmManager来安排重复任务。基本上,我有这个代码:

Intent intent = new Intent(INTENT_ACTION_TICK);
// The following line prevents the broadcast receiver from being notified:
intent.setClass(context, MyScheduler.class);
PendingIntent pendingIntent = PendingIntent.getBroadcast(context, 0, intent, 0);

alarmManager.setInexactRepeating(AlarmManager.ELAPSED_REALTIME, intervalInMs, intervalInMs, pendingIntent);

我在其构造函数中注册MyScheduler作为广播接收器:

context.registerReceiver(this, new IntentFilter(INTENT_ACTION_TICK));

除非我添加intent.setClass,否则一切都按预期工作(接收器被触发)。但是,对我来说很好,我清楚地记得你出于安全原因应该使用显式意图(intent.setClass)。

这是我必须考虑的用例吗?

0 个答案:

没有答案