Доставчик на съдържание за Android

Доставчик на съдържание, като поиска компонент, предоставя данни от едно приложение на друго приложение. Тези заявки към класа ContentResolver са начинът да се справите. Доставчиците на съдържание могат да използват различни методи за съхранение на данни. Данните могат да се съхраняват в база данни, файл или дори мрежа.

android

Понякога необходимостта от споделяне на данни между приложения. В този случай доставчикът на съдържание става много полезен.

Доставчиците на съдържание могат да направят фокуса върху съдържанието, можете да имате няколко различни приложения за достъп, ако е необходимо. Доставчици на съдържание и действа като база данни. Можете да правите заявки, да редактирате съдържанието му, да използвате insert(), update(), delete() и query(), за да добавяте или премахвате съдържание. В повечето случаи данните се съхраняват в SQLite база данни.

Доставчикът на съдържание е имплементиран като подклас на класа ContentProvider. Трябва да внедрим редица стандартни API, за да позволим на други приложения да завършат транзакция.

URI съдържание

За да направите заявка към доставчик на съдържание, трябва да сте в следния формат, за да посочите низ за заявка за URI:

Следното е конкретно описание на всяка част от URI:

Създаване на доставчик на съдържание

Простите стъпки, описани тук, са за доставчиците да създават свое собствено съдържание.

Под доставчика на съдържание, за да свършите работата, трябва да пренапишете някакъв метод в класа ContentProvider:

съдържание

  • onCreate(): Извиква се при стартиране на доставчика.
  • request(): Този метод приема заявки от клиента. Резултатът е връщане на обект-указател (курсор).
  • insert(): доставчици на съдържание Това е начинът да вмъкнете нов запис.
  • remove(): Този метод е премахнат отдоставчик на съдържание в съществуващ запис.
  • Update(): Този метод актуализира доставчика на съдържание в съществуващ запис.
  • GetType(): Този метод връща дадения URI тип метаданни.

Този пример обяснява как да създадете свой собствен доставчик на съдържание. Нека направим следното:

описание на стъпката
1Създаване на приложения за Android с помощта на Android Studio, наречено Content Provider, в пакета cn.uprogrammer.contentprovider, и създаване на пространствени дейности.
2Редактирайте файла MainActivity.java на основната дейност, за да добавите два нови метода onClickAddName() и onClickRetrieveStudents().
3Създаден в рамките на новия Java пакет cn.uprogrammer.contentprovider StudentsProvider.java файл за дефиниране на действителния доставчик, както и свързаните с него методи.
4Използвайте маркера в AndroidManifest.xml на регистрирания доставчик на съдържание.
5Промяната на съдържанието по подразбиране на res/layout/file в activity_main.xml за добавяне на запис за ученик съдържа прост интерфейс.
6Без да променя strings.xml, android studio ще обърне внимание на файла strings.xml.
7Стартирайте емулатора на Android, за да стартирате приложението и да проверите резултатите от промените, направени в приложението.

По-долу е модификацията на файловете AndroidManifest.xml. Добавихме етикет тук, за да включим нашите доставчици на съдържание:

Нека просто стартираме модифицираното приложение за доставчик на съдържание. Предполагам, че сте създали AVD по време на настройката на средата. Отворете проекта си в активен файл, щракнете върху лентата с инструментиИконата за стартиране на приложението в Android Studio. Android studio инсталирайте приложението на AVD и го стартирайте. Ако всичко върви добре, ще се покаже в прозореца на емулатора по следния начин:

съдържание

Въведете името и годината и кликнете върху бутона "Добавяне", което ще добави студентския запис към данните, а най-долу за изтриване на съобщението. Информация за съдържанието показва броя на записите, добавени към URI на доставчика на съдържание на базата данни. Тази операция използва метода insert(). Повторете този процес, за да добавите още ученици към базата данни на нашия доставчик на съдържание.

доставчик

След като приключите с добавянето на записи към базата данни, е време да се върнете към доставчика на съдържание, който изисква тези записи. Щракнете върху бутона „Търсене“, който ще дойде, за да извлечете и покажете всички данни, записани с помощта на изпълнението на метода на заявка ().

Можете да предоставите метод за обратно извикване на MainActivity.java, за да подготвите дейности за актуализиране и изтриване и да промените потребителския интерфейс, за да добавите актуализиране и изтриване.

Можете да използвате съществуващо съдържание, предоставено по този начин чрез такива контакти. Можете също така по такъв начин, че да разработите добра ориентирана към приложението база данни, можете да извършите, както е описано по-горе, известно като пример за операции с база данни като четене, запис, актуализиране и изтриване.