2017-07-20 6 views
0

ここに私のコードがあり、 "CalendarContract.Events.CALENDAR_ID"の値が何であるか知りたいですか?このコードはPre Android N Osに取り組んでいますが、値として「1」を入れると、特定のフィールド(リマインダー、誕生日、休日など)にイベントが作成され、ユーザーごとに変化します。だから、もし私がいくつかのヌガーデバイスで値として "5"を渡したら、あるデバイスでは適切な出力を得るかもしれないが、そのイベントはリマインダや休日で作成され、数秒で自動的に削除されるかもしれない。 Mより低いバージョンの1としてアンドロイドのカレンダーに予定を追加する際に、CALENDAR_IDにはどのような設定が必要ですか?

 ContentResolver cr = context.getContentResolver(); 
     ContentValues values = new ContentValues(); 
     values.put(CalendarContract.Events.DTSTART, startMillis); 
     values.put(CalendarContract.Events.DTEND, endMillis); 
     values.put(CalendarContract.Events.TITLE, title); 
     values.put(CalendarContract.Events.CALENDAR_ID, 1); 
     values.put(CalendarContract.Events.EVENT_TIMEZONE, 
     Calendar.getInstance().getTimeZone().getID()); 
     Uri uri=cr.insert(CalendarContract.Events.CONTENT_URI, 
     values); 
     long eventId = Long.parseLong(uri.getLastPathSegment()); 

答えて

1

設定アンドロイドM及び上記装置3としてCALENDAR_IDの値及び値は、デバイスのほとんどで動作します。

しかし、いくつかのdevcivesで問題が発生します。今のように、適切なイベント作成のために値1をとるアンドロイドバージョン6.0のLenoveデバイスには問題があります。

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M){ 
    values.put(Events.CALENDAR_ID, 3); 
}else{ 
    values.put(Events.CALENDAR_ID, 1); 
    } 
+0

https://stackoverflow.com/questions/35776265/android-create-calendar-event-always-as-birthdayを参照してください。 – natashadawra

関連する問題