AlarmManager.AlarmClockInfo中的PendingIntent在哪里使用?

4

AlarmManager.AlarmClockInfo的构造函数需要一个PendingIntent,被描述为“可以用来显示或编辑闹钟的详细信息的意图”。系统在哪里使用它?我在Android 6.0 UI中没有看到任何似乎会触发那个PendingIntent的东西。

1个回答

4
PendingIntent是由AlarmManager.AlarmClockInfo中的getShowIntent()返回的:
public PendingIntent getShowIntent() {
    return mShowIntent;
}

它用于 StatusBarHeaderViewonClick() 方法中:

PendingIntent showIntent = mNextAlarm.getShowIntent();
if (showIntent != null && showIntent.isActivity()) {
    mActivityStarter.startActivity(showIntent.getIntent(), true /* dismissShade */);
}

在视觉上,用户点击以调用PendingIntent的东西是闹钟日期/时间,如下图所示,以灰色显示在闹钟图标右侧:

Android 6.0 Notification Shade, Showing Pending Alarm Clock


感谢指出待定意图应该启动一个活动。现在我明白了为什么我的“BroadcastReceiver”根本没有接收到任何东西。 - Nikolai
提供ShowIntent是必须的吗?我在代码中看到了一个null检查。 - Arashsoft

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接