3.4.1.GA on Windows targeting Android 4.4.4
Using the following code which gives no errors but doesn't produce a calendar entry either.
I have read and write permissions properly set in the manifest.
Any ideas?
var calendars = []; var pickerData = []; var settingSelectedCalendarName = Ti.App.Properties.getString('calendarName'); var settingSelectedCalendarId = Ti.App.Properties.getString('calendarId'); var selectedCalendarName; var selectedCalendarId; Ti.API.info(settingSelectedCalendarName + " / " + settingSelectedCalendarId); var win = Ti.UI.createWindow({ backgroundColor: 'white', exitOnClose: true, fullscreen: false, layout: 'vertical', title: 'Calendar Demo' }); var selectableCalendars = Ti.Calendar.selectableCalendars; for (var i = 0, ilen = selectableCalendars.length; i < ilen; i++) { calendars.push({ name: selectableCalendars[i].name, id: selectableCalendars[i].id }); pickerData.push( Ti.UI.createPickerRow({ title: calendars[i].name }) ); if(i === 0){ selectedCalendarName = selectableCalendars[i].name; selectedCalendarId = selectableCalendars[i].id; } } var selectableCalendars = null; picker = Ti.UI.createPicker({ top:20, selectionIndicator: true, useSpinner: true }); picker.add(pickerData); win.add(picker); if(settingSelectedCalendarId) { for (var i = 0 ; i < calendars.length ; i++) { if (calendars[i].id == settingSelectedCalendarId) { Ti.API.info('element ' + i); Ti.API.info(calendars[i].id); picker.setSelectedRow(0,i); break; } } } picker.addEventListener('change', function(e){ for (var i = 0, ilen = calendars.length; i < ilen; i++) { if(calendars[i].name === e.row.title){ selectedCalendarName = calendars[i].name; selectedCalendarId = calendars[i].id; } } Ti.App.Properties.setString('calendarId', selectedCalendarId); Ti.App.Properties.setString('calendarName', selectedCalendarName); Ti.API.info(selectedCalendarName + " / " + selectedCalendarId); }); function AddCalendarEntry(calendarId) { Ti.API.info(calendarId); var localCalendar = Ti.Calendar.getCalendarById(calendarId); // Create the event var eventBegins = new Date(2014, 12, 15, 12, 0, 0); var eventEnds = new Date(2014, 12, 15, 14, 0, 0); var details = { title: 'Another Titanium Test', description: "I'm going to do some stuff at this time.", begin: eventBegins, end: eventEnds }; var event = localCalendar.createEvent(details); // Now add a reminder via e-mail for 10 minutes before the event. var reminderDetails = { minutes: 10, method: Ti.Calendar.METHOD_EMAIL }; event.createReminder(reminderDetails); } var button = Ti.UI.createButton({ title: 'Make Entry', bottom: 20 }); button.addEventListener('click',function(e){ AddCalendarEntry(selectedCalendarId); }); win.add(button); win.open();