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.