我正在编写一个应用程序,它需要在后台将事件写入日历,而在安装应用程序后,用户无需输入。这意味着使用intents创建事件的方法不是我想要的。
我在一个网站上找到了这个代码,但它不起作用:

    long start = 1297512000; // 2011-02-12 12h00
    long end = 1297515600;   // 2011-02-12 13h00

    String title = "TEST ENTRY - DELETE ME!!";

    ContentValues cvEvent = new ContentValues();
    cvEvent.put("calendar_id", 1);
    cvEvent.put("title", title);
    cvEvent.put("dtstart", start );
    //cvEvent.put("hasAlarm", 1);
    cvEvent.put("dtend", end);

    getContentResolver().insert(Uri.parse("content://com.android.calendar/events"), cvEvent);

现在,在任何人涉足“谷歌强烈建议你不要使用这种方法”之类的东西之前,我已经知道了这一点。
有人把这个弄好了吗?我正在我的设备上运行姜饼,所以可能会导致问题!
我发现的唯一选择是使用gdataapi,但是我需要验证这就是为什么上面的方法更好的原因。有一些应用程序不需要认证,所以他们必须使用这个!:)
如果有人能帮忙,请帮忙!
谢谢
尼尔

最佳答案

转换日期时出现问题。我在上世纪70年代就有了一个约会,但我希望是2011年2月。
使用不同的epoch转换器显示我有3个丢失的0。

09-30 18:02