没有错误,它可以工作,但无法在日历中找到数据

时间:2015-05-16 11:04:43

标签: android calendar

public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    setEvent();
}
private void setEvent(){  

    Calendar cal = Calendar.getInstance();              
    Intent intent = new Intent(Intent.ACTION_EDIT);
    intent.setType("vnd.android.cursor.item/event");
    intent.putExtra("beginTime", cal.getTimeInMillis());
    intent.putExtra("allDay", true);
    intent.putExtra("rrule", "FREQ=YEARLY");
    intent.putExtra("endTime", cal.getTimeInMillis()+60*60*1000);
    intent.putExtra("title", "A Test Event from android app");
    startActivity(intent);
    Toast.makeText(this, "Event Added", Toast.LENGTH_LONG).show(); 
   }}

此代码在日历上添加数据。 我找到了它并且我尝试了并且没有错误建立并且它运作良好因为我敬酒了。但我无法在我的日历上找到任何新活动。 我能怎么做?我必须添加更多代码吗? 或者它不适用于谷歌日历? 请帮我在日历上添加活动。 谢谢。

1 个答案:

答案 0 :(得分:0)

尝试传递值如下:

Intent intent = new Intent(Intent.ACTION_EDIT);
intent.setType("vnd.android.cursor.item/event");
intent.putExtra(Events.TITLE, strTitle);
intent.putExtra(CalendarContract.EXTRA_EVENT_BEGIN_TIME,startDateMillis);
intent.putExtra(CalendarContract.EXTRA_EVENT_END_TIME,endDateMillis);
intent.putExtra(Events.ALL_DAY, false);// periodicity
intent.putExtra(Events.DESCRIPTION,strDescription));
startActivity(intent);

更多参数参考:

http://developer.android.com/guide/topics/providers/calendar-provider.html