android - 当日历在 Android 中触发了提醒提醒的接收器时,如何获取事件 ID?

标签 android

这是我的代码:

public class CalendarReminderReceiver extends BroadcastReceiver{

@Override
public void onReceive(Context context, Intent intent) {
    if (intent.getAction().equalsIgnoreCase(CalendarContract.ACTION_EVENT_REMINDER)) {
        //Do Something Here to get EVENT ID
    }

}

}

无论如何,是否可以从广播接收器获取提醒事件的事件 ID? 这是我的 list :

<receiver
        android:name="com.calendar.CalendarReminderReceiver">
        <intent-filter>
            <action android:name="android.intent.action.EVENT_REMINDER" />
            <data android:scheme="content"/>
        </intent-filter>
</receiver>

最佳答案

也许为时已晚,但这是我的解决方案:

if (intent.getAction().equalsIgnoreCase(CalendarContract.ACTION_EVENT_REMINDER)) {
    //Do Something Here to get EVENT ID
    Uri uri = intent.getData();

    String alertTime = uri.getLastPathSegment();

    String selection = CalendarContract.CalendarAlerts.ALARM_TIME + "=?";

    Cursor cursor = context.getContentResolver().query(CalendarContract.CalendarAlerts.CONTENT_URI_BY_INSTANCE, new String[]{CalendarContract.CalendarAlerts.EVENT_ID},selection,new String[]{alertTime}, null);

}

关于android - 当日历在 Android 中触发了提醒提醒的接收器时,如何获取事件 ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21393071/

相关文章:

c# - Android 模拟器未运行 - Visual Studio 2017

android - PopupWindow + 全屏 => 显示通知栏?

java - 从弃用的 Blobstore File API 到服务 blob

android - 调用 Web 服务和接收数据时出错

android - 如果我们让设备长时间闲置,应用程序会崩溃

android - 方向改变时相机出现问题

android - 如何将一个lib结构复杂的Eclipse workspace导入到Android Studio中?

java - 如何解析地点详细信息 API JSON

android - 使用 Gradle 和 CMake 将静态 ".a"库链接到 Android Studio 项目

android - 如何动画 fragment 移除