Wprowadzenie do obiektów ContentProvider

System operacyjny Android używa dostawców zawartości do ułatwienia dostępu do udostępnionych danych, takich jak pliki multimedialne, kontakty i informacje kalendarza. W tym artykule przedstawiono klasę ContentProvider i przedstawiono dwa przykłady użycia tej klasy.

Omówienie dostawców zawartości

Obiekt ContentProvider hermetyzuje repozytorium danych i udostępnia interfejs API umożliwiający dostęp do niego. Dostawca istnieje w ramach aplikacji systemu Android, która zwykle udostępnia również interfejs użytkownika do wyświetlania/zarządzania danymi. Kluczową zaletą korzystania z dostawcy zawartości jest umożliwienie innym aplikacjom łatwego uzyskiwania dostępu do hermetyzowanych danych przy użyciu obiektu klienta dostawcy (nazywanego ContentResolver). Razem dostawca zawartości i rozpoznawanie zawartości oferują spójny interfejs API między aplikacjami na potrzeby dostępu do danych, który jest prosty do kompilowania i korzystania z nich. Każda aplikacja może używać do ContentProviders zarządzania danymi wewnętrznie, a także do uwidaczniania ich innym aplikacjom.

Aplikacja ContentProvider jest również wymagana, aby udostępnić sugestie dotyczące wyszukiwania niestandardowego lub jeśli chcesz zapewnić możliwość kopiowania złożonych danych z aplikacji w celu wklejania ich do innych aplikacji. W tym dokumencie przedstawiono sposób uzyskiwania dostępu do platformy Xamarin.Android i kompilowania ContentProviders przy użyciu platformy Xamarin.Android.

Struktura tej sekcji jest następująca:

  • Jak to działa — omówienie tego, co ContentProvider zostało zaprojektowane i jak działa.

  • Korzystanie z dostawcy zawartości — przykład uzyskiwania dostępu do listy Kontakty.

  • Używanie elementu ContentProvider do udostępniania danych — zapisywanie i używanie obiektu ContentProvider w tej samej aplikacji.

ContentProviders i kursory, które działają na ich danych, są często używane do wypełniania ListViews. Aby uzyskać więcej informacji na temat używania tych klas, zapoznaj się z przewodnikiem ListViews and Adapters (Interfejsy ListView i adaptery).

ContentProviders Uwidocznione przez system Android (lub inne aplikacje) to łatwy sposób dołączania danych z innych źródeł w aplikacji. Umożliwiają one dostęp do i prezentowanie danych, takich jak lista Kontakty, zdjęcia lub zdarzenia kalendarza z poziomu aplikacji, oraz umożliwienie użytkownikowi interakcji z tymi danymi.

Niestandardowe ContentProviders są wygodnym sposobem spakowania danych do użycia wewnątrz własnej aplikacji lub do użytku przez inne aplikacje (w tym specjalne zastosowania, takie jak wyszukiwanie niestandardowe i kopiowanie/wklejanie).

Tematy w tej sekcji zawierają kilka prostych przykładów używania i pisania ContentProvider kodu.