Добрый день! ContentProvider статья или урок

Ваши предложения по развитию сайта startandroid.ru и вопросы по его функционалу
Ответить
Аватара пользователя
mozilalvfg
Сообщения: 85
Зарегистрирован: 10 авг 2013, 18:46

Добрый день! ContentProvider статья или урок

Сообщение mozilalvfg » 15 авг 2013, 02:21

ContentProvider интересная тема для Android , я думаю многим форумчанам как и мне было бы интересно к примеру как в календарь телефона добавить событие или создать будильник.
Из средств, расширяющих сознание, я признаю только книги и немного пива!
____________________________________________________________________
IntelliJ IDEA 12. Win 7 x64 sp1
KSWEB: сервер + PHP + MySQL FREE
Изображение

Аватара пользователя
rezak90
Сообщения: 3422
Зарегистрирован: 26 июн 2012, 13:22
Откуда: UA
Контактная информация:

Re: Добрый день! ContentProvider статья или урок

Сообщение rezak90 » 15 авг 2013, 07:24

mozilalvfg писал(а):ContentProvider интересная тема для Android , я думаю многим форумчанам как и мне было бы интересно к примеру как в календарь телефона добавить событие или создать будильник.
добавление в календарь http://stackoverflow.com/questions/3721 ... 83#4336183
будильник http://www.jworks.nl/2013/04/03/adding- ... arm-clock/
R.id.team
Политика на форуме запрещена

Аватара пользователя
mozilalvfg
Сообщения: 85
Зарегистрирован: 10 авг 2013, 18:46

Re: Добрый день! ContentProvider статья или урок

Сообщение mozilalvfg » 15 авг 2013, 18:21

Спасибо разбираюсь.


создал проект(минимум API 14 в интернете писали что с него все должно работать) добавил эту функцию и немогу запустить.
Не подскажете как в этой функции вставить "curActivity" , понимаю что это Activity но где взять не могу понять.

Код: Выделить всё

public static long pushAppointmentsToCalender(Activity curActivity, String title, String addInfo, String place, int status, long startDate, boolean needReminder, boolean needMailService) {
    /***************** Event: note(without alert) *******************/

    String eventUriString = "content://com.android.calendar/events";
    ContentValues eventValues = new ContentValues();

    eventValues.put("calendar_id", 1); // id, We need to choose from
                                        // our mobile for primary
                                        // its 1
    eventValues.put("title", title);
    eventValues.put("description", addInfo);
    eventValues.put("eventLocation", place);

    long endDate = startDate + 1000 * 60 * 60; // For next 1hr

    eventValues.put("dtstart", startDate);
    eventValues.put("dtend", endDate);

    // values.put("allDay", 1); //If it is bithday alarm or such
    // kind (which should remind me for whole day) 0 for false, 1
    // for true
    eventValues.put("eventStatus", status); // This information is
    // sufficient for most
    // entries tentative (0),
    // confirmed (1) or canceled
    // (2):
    eventValues.put("visibility", 3); // visibility to default (0),
                                        // confidential (1), private
                                        // (2), or public (3):
    eventValues.put("transparency", 0); // You can control whether
                                        // an event consumes time
                                        // opaque (0) or transparent
                                        // (1).
    eventValues.put("hasAlarm", 1); // 0 for false, 1 for true

    Uri eventUri = curActivity.getApplicationContext().getContentResolver().insert(Uri.parse(eventUriString), eventValues);
    long eventID = Long.parseLong(eventUri.getLastPathSegment());

    if (needReminder) {
        /***************** Event: Reminder(with alert) Adding reminder to event *******************/

        String reminderUriString = "content://com.android.calendar/reminders";

        ContentValues reminderValues = new ContentValues();

        reminderValues.put("event_id", eventID);
        reminderValues.put("minutes", 5); // Default value of the
                                            // system. Minutes is a
                                            // integer
        reminderValues.put("method", 1); // Alert Methods: Default(0),
                                            // Alert(1), Email(2),
                                            // SMS(3)

        Uri reminderUri = curActivity.getApplicationContext().getContentResolver().insert(Uri.parse(reminderUriString), reminderValues);
    }

    /***************** Event: Meeting(without alert) Adding Attendies to the meeting *******************/

    if (needMailService) {
        String attendeuesesUriString = "content://com.android.calendar/attendees";

        /********
         * To add multiple attendees need to insert ContentValues multiple
         * times
         ***********/
        ContentValues attendeesValues = new ContentValues();

        attendeesValues.put("event_id", eventID);
        attendeesValues.put("attendeeName", "xxxxx"); // Attendees name
        attendeesValues.put("attendeeEmail", "yyyy@gmail.com");// Attendee
                                                                            // E
                                                                            // mail
                                                                            // id
        attendeesValues.put("attendeeRelationship", 0); // Relationship_Attendee(1),
                                                        // Relationship_None(0),
                                                        // Organizer(2),
                                                        // Performer(3),
                                                        // Speaker(4)
        attendeesValues.put("attendeeType", 0); // None(0), Optional(1),
                                                // Required(2), Resource(3)
        attendeesValues.put("attendeeStatus", 0); // NOne(0), Accepted(1),
                                                    // Decline(2),
                                                    // Invited(3),
                                                    // Tentative(4)

        Uri attendeuesesUri = curActivity.getApplicationContext().getContentResolver().insert(Uri.parse(attendeuesesUriString), attendeesValues);
    }

    return eventID;

}
Из средств, расширяющих сознание, я признаю только книги и немного пива!
____________________________________________________________________
IntelliJ IDEA 12. Win 7 x64 sp1
KSWEB: сервер + PHP + MySQL FREE
Изображение

Аватара пользователя
rezak90
Сообщения: 3422
Зарегистрирован: 26 июн 2012, 13:22
Откуда: UA
Контактная информация:

Re: Добрый день! ContentProvider статья или урок

Сообщение rezak90 » 15 авг 2013, 20:33

копипаст жуткая вещь... что бы передать из активити активити нужно передать ссылку самого на себя this
R.id.team
Политика на форуме запрещена

Ответить