アンドロイドカレンダーにイベントを追加しようとしていますが、Googleカレンダーと自動的に同期するためにイベントがGmailカレンダーに追加されるよう指定しています。 プログラムで追加されたイベントはGoogleカレンダーと同期されませんが、電話で手動で追加するとGoogleカレンダーと同期します。どうしてか分かりません。アンドロイドのGoogleカレンダーで同期イベントをプログラムで追加しました
これは私がイベントを追加するために使用するコードです:
ArrayList<MyCalendar> calendars = new ArrayList<MyCalendar>();
String[] projection = new String[] { "_id", "name" };
Uri calUri = getCalendarURI(false);
Cursor managedCursor = managedQuery(calUri, projection, "selected=1",
null, null);
String calName = null;
String calId = null;
if (managedCursor.moveToFirst()) {
int nameColumn = managedCursor.getColumnIndex("name");
int idColumn = managedCursor.getColumnIndex("_id");
do {
calName = managedCursor.getString(nameColumn);
calId = managedCursor.getString(idColumn);
calendars.add(new MyCalendar(Integer.parseInt(calId), calName));
} while (managedCursor.moveToNext());
}
Toast.makeText(getBaseContext(), calName + " " + calId,
Toast.LENGTH_LONG).show();
Calendar cal = Calendar.getInstance();
ContentValues event = new ContentValues();
event.put("calendar_id", 2);
event.put("title", "Test Event2");
event.put("description", "Hiii Buddy");
long startTime = cal.getTimeInMillis();
long endTime = cal.getTimeInMillis() + 60 * 60 * 1000;
event.put("dtstart", startTime);
event.put("dtend", endTime);
event.put("allDay", 0);
event.put("eventStatus", 1);// tentative 0, confirmed 1 canceled 2
event.put("visibility", 3);// default 0 confidential 1 private 2
// public 3
event.put("transparency", 0);// opaque 0 transparent 1
event.put("hasAlarm", 1); // 0 false, 1 true
Uri eventsUri = getCalendarURI(true);
Uri url = getContentResolver().insert(eventsUri, event);
ので、イベントが正常にカレンダーに追加けど、それはウェブでGoogleカレンダーに表示されない(同期しません)しかし、もし私が手動でそれを同期するイベントを追加する!
私は同じ問題を抱えています@ 。あなたはあなたの問題を解決しましたか? – asish
まだ解決策はありますか? – mvieghofer