2013-12-19 73 views
0

我需要Android应用程序的帮助我想在日历中创建广告事件(而不是Google日历但不是可编辑的日历)不可编辑。android可以创建日历中不可编辑的事件吗?

现在我用这个代码来回创建事件和日历:

pushAppointmentsToCalender(this, "TITLE", "DESCRIPTION", "CITY", 1, MYDATE, false, false); 

public static long pushAppointmentsToCalender(Activity curActivity, String title, String addInfo, String place, int status, long startDate, boolean needReminder, boolean needMailService) { 

     String eventUriString = "content://com.android.calendar/events"; 
     ContentValues eventValues = new ContentValues(); 
     eventValues.put("eventTimezone", TimeZone.getDefault().getID()); 
     eventValues.put("calendar_id", 2); // id, We need to choose from 
              // our mobile for primary 
              // its 1 
     eventValues.put("title", title); 

     eventValues.put("description", addInfo); 
     eventValues.put("eventLocation", place); 
     eventValues.put("description", addInfo); 
     eventValues.put("eventLocation", place); 



     long endDate = startDate + 1000 * 60 * 60; // For next 1hr 


     eventValues.put("dtstart", startDate); 
     eventValues.put("dtend", endDate); 
     eventValues.put("guestsCanModify", 0); 

     eventValues.put("eventStatus", status); // This information is 




     Uri eventUri = curActivity.getApplicationContext().getContentResolver().insert(Uri.parse(eventUriString), eventValues); 
     long eventID = Long.parseLong(eventUri.getLastPathSegment()); 

    return eventID; 

    } 

此代码的工作,但如果我打开我的日历我可以修改的事件。

有一个类似的事件属性:eventIsEditable = False

+1

这对发送垃圾邮件的日历来说非常合适。我希望这是不可能的。 – Henry

+0

从facebook输入的日历事件不可编辑。很明显,你授权应用程序插入事件。 如何将代码插入到无法更改的事件? – Ray13

回答

0

从Android的日历提供商documentation

这些都是各个领域的甚至可以有事件所属的日历的

  • CALENDAR_ID的_ID。
  • 组织者活动组织者(所有者)的电子邮件。
  • TITLE事件的标题。
  • EVENT_LOCATION事件发生的地方。
  • 说明事件的描述。
  • DTSTART事件从纪元开始以UTC毫秒为单位的时间。
  • DTEND事件以时间结束的时间,自纪元开始以UTC毫秒为单位。
  • EVENT_TIMEZONE事件的时区。
  • EVENT_END_TIMEZONE事件结束时间的时区。
  • DURATION RFC5545格式的事件持续时间。例如,“PT1H”的值表示该事件应该持续一个小时,而“P2W”的值表示持续2周。
  • ALL_DAY值为1表示此事件占用整个一天,由当地时区定义。值为0表示这是一个常规事件,可以在一天中的任何时间开始和结束。
  • RRULE事件格式的重复规则。例如,“FREQ = WEEKLY; COUNT = 10; WKST = SU”。你可以在这里找到更多的例子。 RDATE事件的重现日期。您通常将RDATE与RRULE结合使用来定义一组重复出现次数的集合。有关更多讨论,请参阅RFC5545规范。
  • 可用性如果此事件计为繁忙时间或可以安排在空闲时间以上。
  • GUESTS_CAN_MODIFY客人是否可以修改活动。
  • GUESTS_CAN_INVITE_OTHERS客人是否可以邀请其他客人。
  • GUESTS_CAN_SEE_GUESTS

他们都没有任何与用户的修改事件的能力。所以不,它是不可能做到这一点使用android内置的日历。

+0

是的,这是事件的属性。 但我可以创建一个不可编辑的日历像Facebook的事件? – Ray13

相关问题