Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/193.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Android:无法在Android中添加日历上的事件_Java_Android_Kotlin - Fatal编程技术网

Java Android:无法在Android中添加日历上的事件

Java Android:无法在Android中添加日历上的事件,java,android,kotlin,Java,Android,Kotlin,Android:我试图在不打开Android日历应用程序的情况下在Android日历上添加事件(隐含意图)。 调用下面的函数onAddEventClicked()后成功获取eventId,但事件未保存且未显示在日历应用程序中 任何人都可以帮助我。提前谢谢 在AddEventClicked()上的乐趣{ val calID:Long=3 val startMillis:Long=Calendar.getInstance().run{ 套装(2019、10、3、7、30) 时间单位毫秒 } val

Android:我试图在不打开Android日历应用程序的情况下在Android日历上添加事件(隐含意图)。 调用下面的函数onAddEventClicked()后成功获取eventId,但事件未保存且未显示在日历应用程序中

任何人都可以帮助我。提前谢谢


在AddEventClicked()上的乐趣{
val calID:Long=3
val startMillis:Long=Calendar.getInstance().run{
套装(2019、10、3、7、30)
时间单位毫秒
}
val endMillis:Long=Calendar.getInstance().run{
套装(2019、10、5、8、45)
时间单位毫秒
}
val values=ContentValues()。应用{
put(CalendarContract.Events.DTSTART,startMillis)
put(CalendarContract.Events.DTEND,endMillis)
放置(CalendarContract.Events.TITLE,“我的生日”)
put(CalendarContract.Events.DESCRIPTION,“庆祝日”)
put(CalendarContract.Events.CALENDAR\u ID,calID)
put(CalendarContract.Events.EVENT_时区,TIMEZONE.getDefault().id)
}
val uri:uri=contentResolver.insert(CalendarContract.Events.CONTENT_uri,值)
val eventID:Long=uri.lastPathSegment.toLong()
}

这是我在应用程序中将事件添加到日历中的方法:

    Calendar calAppointment = Calendar.getInstance();
    calAppointment.setTime(appointment.getAppointmentDate());
    calAppointment.set(Calendar.HOUR_OF_DAY, 12);
    calAppointment.set(Calendar.MINUTE, 30);
    Intent intent = new Intent(Intent.ACTION_INSERT);
    intent.setType("vnd.android.cursor.item/event");
    intent.putExtra(CalendarContract.EXTRA_EVENT_BEGIN_TIME, calAppointment.getTime().getTime());
    intent.putExtra(CalendarContract.Events.EVENT_TIMEZONE, "Your Timezone");
    intent.putExtra(CalendarContract.Events.TITLE, "Title");
    intent.putExtra(CalendarContract.Events.DESCRIPTION, "Your description");
    intent.putExtra(CalendarContract.Events.EVENT_LOCATION, "Your location");
    if (intent.resolveActivityInfo(getActivity().getPackageManager(), 0) != null) {
        startActivity(intent);
    }

希望这能对您有所帮助。

这是我在应用程序中为日历添加事件的想法:

    Calendar calAppointment = Calendar.getInstance();
    calAppointment.setTime(appointment.getAppointmentDate());
    calAppointment.set(Calendar.HOUR_OF_DAY, 12);
    calAppointment.set(Calendar.MINUTE, 30);
    Intent intent = new Intent(Intent.ACTION_INSERT);
    intent.setType("vnd.android.cursor.item/event");
    intent.putExtra(CalendarContract.EXTRA_EVENT_BEGIN_TIME, calAppointment.getTime().getTime());
    intent.putExtra(CalendarContract.Events.EVENT_TIMEZONE, "Your Timezone");
    intent.putExtra(CalendarContract.Events.TITLE, "Title");
    intent.putExtra(CalendarContract.Events.DESCRIPTION, "Your description");
    intent.putExtra(CalendarContract.Events.EVENT_LOCATION, "Your location");
    if (intent.resolveActivityInfo(getActivity().getPackageManager(), 0) != null) {
        startActivity(intent);
    }

希望这能对您有所帮助。

谢谢您的回答,但我不需要致电impact intent。我将不得不在不打开日历应用程序的情况下添加事件。这将重定向到日历应用程序。感谢您的回答,但我不需要致电impact intent。我将不得不在不打开日历应用程序的情况下添加事件。这将重定向到日历应用程序。
    Calendar calAppointment = Calendar.getInstance();
    calAppointment.setTime(appointment.getAppointmentDate());
    calAppointment.set(Calendar.HOUR_OF_DAY, 12);
    calAppointment.set(Calendar.MINUTE, 30);
    Intent intent = new Intent(Intent.ACTION_INSERT);
    intent.setType("vnd.android.cursor.item/event");
    intent.putExtra(CalendarContract.EXTRA_EVENT_BEGIN_TIME, calAppointment.getTime().getTime());
    intent.putExtra(CalendarContract.Events.EVENT_TIMEZONE, "Your Timezone");
    intent.putExtra(CalendarContract.Events.TITLE, "Title");
    intent.putExtra(CalendarContract.Events.DESCRIPTION, "Your description");
    intent.putExtra(CalendarContract.Events.EVENT_LOCATION, "Your location");
    if (intent.resolveActivityInfo(getActivity().getPackageManager(), 0) != null) {
        startActivity(intent);
    }