0

イベントをネイティブ カレンダーに正常に追加し、Android API レベル 14 以降で正常に動作します。

@VishalKhakhkhar のコードを試しましたが、まだこの問題を解決できませんか? エラーが発生しています: 2.3.6 を実行しているデバイスでテストする場合、Intent { act=android.intent.action.EDIT typ=vnd.android.cursor.item/event を処理するアクティビティが見つかりません

以下の更新されたコードを参照して、この問題を解決してみてください:-

    Button btnEvents = (Button) findViewById(R.id.button1);
    btnEvents.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View arg0) {
            // TODO Auto-generated method stub

            long startMillis = 0; 
            long endMillis = 0; 
            Calendar beginTime = Calendar.getInstance(); 
            beginTime.set(2014, 1, 16, 16, 0);  
            startMillis = beginTime.getTimeInMillis(); 
            Calendar endTime = Calendar.getInstance(); 
            endTime.set(2014, 1, 16, 22, 30);
            endMillis= endTime.getTimeInMillis();

            if (Build.VERSION.SDK_INT >= 14) {
                Intent intent = new Intent(Intent.ACTION_EDIT).setData(Events.CONTENT_URI)
                    .putExtra(CalendarContract.EXTRA_EVENT_BEGIN_TIME, startMillis)
                    .putExtra(CalendarContract.EXTRA_EVENT_END_TIME, endMillis)
                    .putExtra(Events.TITLE, "Title")
                    .putExtra(Events.DESCRIPTION, "Description")
                    .putExtra(Events.EVENT_LOCATION, "Location")
                    .putExtra(Reminders.HAS_ALARM, true)
                    .putExtra(Reminders.METHOD, Reminders.METHOD_DEFAULT);
                    startActivity(intent);
            } else {
                Intent intent = new Intent(Intent.ACTION_EDIT);
                intent.setType("vnd.android.cursor.item/event");
                intent.putExtra("title", "Title");
                intent.putExtra("description", "Description");
                intent.putExtra("beginTime", startMillis);
                intent.putExtra("allDay", false);
                intent.putExtra("endTime", endTime.endMillis);
                intent.putExtra("eventLocation", "Location");
                intent.putExtra("hasAlarm", 1);
                startActivity(intent);
            }               
        }
    });     
}
4

3 に答える 3