2

Я сбит с толку notifyChange machenism используется в contentProvide:андроид ContentProvider notifyChange

// Tell the cursor what uri to watch, so it knows when its source data changes 
     c.setNotificationUri(getContext().getContentResolver(), uri); 

и

getContext().getContentResolver().notifyChange(noteUri, null); 

Вот вопросы (предположим, поставщик и клиент находятся в разных пакетах):

  1. Является ли contentResolver возвращенным поставщиком таким же, как Resolver, возвращенным клиентом?
  2. Является ли курсор таким же, как возвращенный поставщиком и клиентом?
  3. Что такое разрешение Uri для получения уведомлений? весь стол uri или ряд?

Просьба уточнить

ответ

0

Я знаю, что это старый вопрос. Я отвечаю так, что это полезно для тех, кто сталкивается с этим вопросом.

  1. ли в contentResolver возвращенного Поставщиком же, как Resolver возвращенного клиентом?

Да, это то же самое.

  1. Является ли курсор таким же, как возвращенный поставщиком и клиентом?

Я полагаю, вы спрашиваете, это в контексте первого фрагмента кода, который рассматривается в методе запроса(). Здесь вы устанавливаете uri уведомления на курсор, который должен быть возвращен клиенту. Итак, очевидно, что клиент и поставщик используют один и тот же курсор.

  1. Что такое разрешение Uri для получения уведомлений? весь стол uri или ряд?

Ури для уведомления зависит от операции:

  1. вставки() - Уведомление Uri является таблица Uri добавляется с идентификатором вновь вставленной строки.

  2. delete() и update() - здесь Uri - это таблица Uri, добавленная с идентификатором удаленной или обновленной строки.

Смежные вопросы