如何在AndroID手机中添加新的日历?我想动态地生成该日历中的事件,而不需要访问任何在线资源(如Google).
编辑:我想支持AndroID 1.5和2.3.4手机.有一天我可能会更新到4.0的新手机,但谁知道什么时候会…
解决方法 我刚刚设法使用ICS的新API添加了一个日历. Stefan的答案有帮助,但是为了能够写入所有的列,你必须做同步适配器的 *** 作.您可以使用CalendarContract.ACCOUNT_TYPE_LOCAL从普通应用程序中执行此 *** 作.以下代码应该适用于ICS.也许一些列值不正确.查看CalendarContract.Calendars的文档.不幸的是,我无法帮助您使用较旧的AndroID版本,但是CalendarContract仅用于某些常量字符串值.也许这些也可以在旧版本上工作.Uri calUri = CalendarContract.Calendars.CONTENT_URI;ContentValues cv = new ContentValues();cv.put(CalendarContract.Calendars.ACCOUNT_name,yourAccountname);cv.put(CalendarContract.Calendars.ACCOUNT_TYPE,CalendarContract.ACCOUNT_TYPE_LOCAL);cv.put(CalendarContract.Calendars.name,yourInternalname);cv.put(CalendarContract.Calendars.CALENDAR_disPLAY_name,yourdisplayname);cv.put(CalendarContract.Calendars.CALENDAR_color,yourcolor);cv.put(CalendarContract.Calendars.CALENDAR_ACCESS_LEVEL,CalendarContract.Calendars.CAL_ACCESS_OWNER);cv.put(CalendarContract.Calendars.OWNER_ACCOUNT,true);cv.put(CalendarContract.Calendars.VISIBLE,1);cv.put(CalendarContract.Calendars.SYNC_EVENTS,1);calUri = calUri.buildUpon() .appendqueryParameter(CalendarContract.CALLER_IS_SYNCADAPTER,"true") .appendqueryParameter(CalendarContract.Calendars.ACCOUNT_name,ACCOUNT_name) .appendqueryParameter(CalendarContract.Calendars.ACCOUNT_TYPE,CalendarContract.ACCOUNT_TYPE_LOCAL) .build();Uri result = this.getContentResolver().insert(calUri,cv);总结
以上是内存溢出为你收集整理的如何将新的手机日历添加到Android?全部内容,希望文章能够帮你解决如何将新的手机日历添加到Android?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)