Wymagania wstępne
- Zainstaluj najnowszą wersję pakietu SDK na Androida, korzystając z pakietu SDK na Androida Menedżer.
- Zainstaluj najnowszą wersję aplikacji appcompat i mediaroutera AndroidX w bibliotece Pakiet SDK na Androida Menedżer.
- Zainstaluj najnowszy pakiet SDK Cast w Google Play usług za pośrednictwem Pakiet SDK na Androida Menedżer.
Pakiet Google Cast SDK na Androida jest częścią pakietu SDK Usług Google Play. nie trzeba pobierać osobno.
Uwaga: Usługi Google Play zapewniają dostęp do zakresu interfejsów API do tworzenia reklam, zbierania danych analitycznych, uwierzytelniania użytkowników integrowanie map i nie tylko. Więcej informacji znajdziesz w artykule Omówienie Google Play. Usługi. Musisz upewnić się, że właściwy plik APK Usług Google Play jest zainstalowano na urządzeniu użytkownika, bo aktualizacje mogą nie dotrzeć od razu do wszystkich użytkowników.
Dodaj Usługi Google Play do projektu
Wybierz poniżej środowisko programistyczne i dodaj Usługi Google Play do projektu przez zgodnie z podanymi instrukcjami.
Android Studio
Aby udostępnić w aplikacji interfejsy API Usług Google Play:
- Otwórz plik
build.gradle
w katalogu modułu aplikacji.Uwaga: projekty Android Studio zawierają
build.gradle
ibuild.gradle
dla każdego modułu. Koniecznie edytuj plik modułu aplikacji. Zobacz kompiluję projekt przy użyciu Gradle, aby dowiedzieć się więcej o Gradle. - Sprawdź, czy
google()
znajduje się na liścierepositories
.repositories {
- Dodaj nową regułę kompilacji w
dependencies
dla najnowszej wersjiplay-services
Na przykład:apply plugin: 'com.android.application' ... dependencies { implementation 'androidx.appcompat:appcompat:1.3.1' implementation 'androidx.mediarouter:mediarouter:1.2.5' implementation 'com.google.android.gms:play-services-cast-framework:21.5.0' }
Pamiętaj, aby aktualizować ten numer przy każdej aktualizacji Usług Google Play.
Uwaga: jeśli liczba odwołań do metod w aplikacji przekracza 65 tys., aplikacja może nie spełniać tych wymagań kompilować. Możesz zapobiec temu problemowi podczas kompilowania aplikacji, określając tylko określonych interfejsów API Usług Google Play, z których korzysta Twoja aplikacja, a nie wszystkich. Informacje na temat jak to zrobić, zobacz Selektywne kompilowanie interfejsów API w plikach wykonywalnych.
- Zapisz zmiany i na pasku narzędzi kliknij Synchronizuj projekt z plikami Gradle.
Inne IDE
Aby udostępnić w aplikacji interfejsy API Usług Google Play:
- Skopiuj projekt biblioteki ze strony
<android-sdk>/extras/google/google_play_services/libproject/google-play-services_lib/
w lokalizacji, w której przechowujesz projekty aplikacji na Androida. - W projekcie aplikacji odwołuj się do projektu biblioteki Usług Google Play. Zobacz
odwoływanie się do projektu bibliotecznego Library Project w wierszu poleceń, aby dowiedzieć się, jak to zrobić.
Uwaga: musisz podać kopię biblioteki, do której zostało skopiowane do obszaru roboczego programowania – nie odwołuj się do biblioteki bezpośrednio z poziomu Katalog pakietu Android SDK.
- Gdy dodasz bibliotekę usług Google Play jako zależność projektu aplikacji,
otwórz plik manifestu aplikacji i dodaj ten tag jako element podrzędny tagu
Element
<application>
:<meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" />
Po skonfigurowaniu w swoim projekcie odwołań do projektu bibliotecznego możesz zacząć tworzyć wraz z funkcjami interfejsów API Usług Google Play.
Utwórz wyjątek ProGuard
Aby zapobiegać
ProGuard
wymaganych klas, dodaj następujące wiersze w
Plik
:
-keep public class com.google.android.gms.common.internal.safeparcel.SafeParcelable { public static final *** NULL; } -keepnames class * implements android.os.Parcelable -keepclassmembers class * implements android.os.Parcelable { public static final *** CREATOR; } -keep @interface android.support.annotation.Keep -keep @android.support.annotation.Keep class * -keepclasseswithmembers class * { @android.support.annotation.Keep <fields>; } -keepclasseswithmembers class * { @android.support.annotation.Keep <methods>; } -keep @interface com.google.android.gms.common.annotation.KeepName -keepnames @com.google.android.gms.common.annotation.KeepName class * -keepclassmembernames class * { @com.google.android.gms.common.annotation.KeepName *; } -keep @interface com.google.android.gms.common.util.DynamiteApi -keep public @com.google.android.gms.common.util.DynamiteApi class * { public <fields>; public <methods>; } -dontwarn android.security.NetworkSecurityPolicy