Inset Calendario y recordatorio

Quiero agregar un recordatorio en el calendario de Google a través de mi aplicación de Android (estudio de Android) pero he intentado todo pero no se agrega en el calendario. También he intentado agregar a través dehttps: //developer.android.com/guide/topics/providers/calendar-provider#event pero aún sin éxito.

            Date d1 = new Date(1472570400);//Tue, 30 Aug 2016 15:20:00 GMT
        Calendar cal1 = Calendar.getInstance();
        cal1.setTime(d1);

        Date d2 = new Date(1472574000);//Tue, 30 Aug 2016 16:20:00 GMT
        Calendar cal2 = Calendar.getInstance();
        cal2.setTime(d2);

        Uri EVENTS_URI = Uri.parse("content://com.android.calendar/events");
        ContentResolver cr = getContentResolver();

        // event insert
        ContentValues values = new ContentValues();
        values.put("calendar_id", 1);
        values.put("title", "Reminder Title");
        values.put("allDay", 0);
        values.put(CalendarContract.Events.EVENT_TIMEZONE, TimeZone.getDefault().getID());                

        values.put("dtstart", cal1.getTimeInMillis() ); // event starts at Tue, 30 Aug 2016 15:20:00
        values.put("dtend", cal2.getTimeInMillis()); // ends at Tue, 30 Aug 2016 16:20:00 GMT

        System.out.println("ALARM TIMES START : " + cal1.getTimeInMillis());
        System.out.println("ALARM TIMES END : "+cal2.getTimeInMillis());

        values.put("description", "Reminder description");                
        values.put("hasAlarm", 1);
        Uri event = cr.insert(EVENTS_URI, values);

        // reminder insert                
        Uri REMINDERS_URI = Uri.parse("content://com.android.calendar/reminders");
        values = new ContentValues();
        values.put( "event_id", Long.parseLong(event.getLastPathSegment()));               

        values.put( "method", 1);
        values.put( "minutes", 1); //Notify before the exact time
        cr.insert( REMINDERS_URI, values );

Respuestas a la pregunta(1)

Su respuesta a la pregunta