我正在使用 2 个独立的警报。我的类中有一个方法,它创建 2 个不同的挂起 Intent 来启动 2 个警报。此方法在完成后调用广播方法,但是根据它接收到的 Intent ,我需要执行不同的操作
提前致谢,
安迪
提示类
public void setSleepPrompts(Context context){
try{
Intent intent = new Intent(context, SleepPromptReceiver.class );
PendingIntent firstSender = PendingIntent.getBroadcast(context, 1, intent, 0);
PendingIntent secondSender = PendingIntent.getBroadcast(context, 2, intent, 0);
AlarmManager am = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
am.set(AlarmManager.RTC_WAKEUP, (this.getBedTimeEpoch() - this.firstPromptOffset), firstSender);
am.set(AlarmManager.RTC_WAKEUP, (this.getBedTimeEpoch() - this.secondPromptOffset), secondSender);
} catch (Exception e){
Log.i(TAG, e.toString());
}
}
广播接收器类
@Override
public void onReceive(Context context, Intent intent) {
try{
if(intent.GET_THE_INTENT_ID?)
Toast.makeText(context, "kapow chow", Toast.LENGTH_SHORT).show();
} catch (Exception e){
Toast.makeText(context, e.toString(), Toast.LENGTH_SHORT).show();
}
}
最佳答案
创建 Intent 时使用intent.putExtra("id", "intent x")
,然后
if(intent.getStringExtra("id").equals("intent x"))
Toast.makeText(context, "kapow chow", Toast.LENGTH_SHORT).show();
关于java - Android - 带有待处理 Intent 的多个警报,如何确定正在调用哪个 Intent ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6898770/