Door uw Android-apps te integreren met de Google Play-services, heeft u toegang tot Google-services, zoals Maps, Drive en Google+. Zodra u uw apps hebt ingesteld om deze services te gebruiken, is toegang tot deze apps meestal eenvoudig. Het instellingsproces vereist enkele stappen, maar je hoeft ze maar één keer uit te voeren. In deze zelfstudie gaan we door het proces van integratie van Google Play-services met Android-apps.
In de zelfstudie beschrijven we wat u moet doen om apps te integreren met Play-services in zowel Eclipse als Android Studio. U heeft toegang nodig tot de Google Developer Console en tot het hulpprogramma Keytool.
Als u eenmaal bent ingesteld met Play Services, wordt het ontwikkelingsproces zelf bepaald door wat u wilt dat uw apps doen. De instellingsprocedure blijft echter hetzelfde. Door de clientbibliotheek te gebruiken voor toegang tot platformservices, profiteren uw apps van automatische updates via de Play Store.
Open uw IDE en start de Android SDK Manager. Kies in Eclipse Venster> Android> SDK Manager. Klik in Android Studio op SDK Manager werkbalkknop. Blader door de lijst, vouw de Extras map en selecteer Google Play-services.
Klik om het pakket te installeren en de licentie te accepteren wanneer u daarom wordt gevraagd. Als u zich ontwikkelt in Android Studio, moet u ook het Google Repository.
Wanneer u apps test waarbij u de API's voor Google Play-services gebruikt, zou u deze idealiter op fysieke apparaten moeten uitvoeren. Het is echter mogelijk om in de emulator te testen. Om dit te doen, moet u de Google API's Platform. U vindt dit in de directory voor elk van de API-niveaus 17 en hoger.
Zoek het platform in uw SDK Manager, installeer het en accepteer de licentie. Wanneer u een AVD (Android Virtual Device) maakt om een app te testen met Google Play-services, kiest u Google API's als doel.
Als u zich in Eclipse ontwikkelt, moet u ook de Play Services-bibliotheek naar uw werkruimte kopiëren. Blader er eerst naar op uw computer met behulp van een bestandsverkenner. Je vindt het in de map waarin je je Android SDK hebt gedownload, op / Extras / google / google_play_services / libproject / google-play-services_lib /
.
Kopieer het naar een locatie op uw computer die u gebruikt voor Android-ontwikkelingsbestanden. Nadat u de bibliotheek hebt gekopieerd (u moet deze kopiëren in plaats van de versie in de SDK-directory te gebruiken), gaat u terug naar Eclipse. Kiezen Importeren van de het dossier menu. Vouw het Android map, selecteer Bestaande Android-code in werkruimte, en klik volgende.
Klik op de Blader en navigeer naar de locatie waarnaar u de Play Services-bibliotheek hebt gekopieerd. Selecteer de map die u hebt gekopieerd en klik op Af hebben om het te importeren. Het pakket verschijnt in uw pakketverkenner.
U kunt nu beginnen met de ontwikkeling van de Play Services-bronnen. Maak een nieuw Android-project in uw IDE. Zodra u een project in uw werkruimte hebt, moet u verwijzen naar de bronnen voor Play Services die zich daarin bevinden.
In Android Studio moet u een bouwregel toevoegen aan de build.gradle bestand in de module voor uw applicatieproject. In de afhankelijkheden
sectie, gebruikt u de volgende syntaxis:
compileren 'com.google.android.gms: afspeelservices: 4.1.32'
Zorg ervoor dat u het nummer gebruikt voor de meest recente versie van Play Services. U moet dit bijwerken als de bibliotheek is bijgewerkt. Sla het bestand op en klik op de Synchroniseer Project met Gradle-bestanden knop.
Selecteer in Eclipse het project in uw Pakketverkenner, klik met de rechtermuisknop of selecteer de project menu en kies eigenschappen. Selecteer de Android optie aan de linkerkant en klik op Toevoegen in de Bibliotheek sectie.
Selecteer de Google Play-servicesbibliotheek in het pop-upvenster en klik op OK om het toe te voegen. Klik Van toepassing zijn en de OK.
toepassing
element:Als u Proguard gebruikt, moet u een uitzondering maken. Raadpleeg de Handleiding voor ontwikkelaars voor meer informatie. Bekijk de pakketindex voor een overzicht van de API's voor Google Play-services.
De verwerkingsstappen die u moet uitvoeren binnen uw toepassingscode, zijn afhankelijk van de functionaliteit die u met Play Services wilt implementeren. De volgende paragrafen schetsen enkele algemene overwegingen en stappen.
Hoewel updates via de Google Play Store worden gepusht, is het toch raadzaam om te controleren in welke versie het gebruikersapparaat is geïnstalleerd voordat u probeert een bewerking uit te voeren met Google Play-services..
Zie de voorbeeldcode van de Implementing GCM Client in de Handleiding voor ontwikkelaars voor een overzicht van hoe deze controles binnen een Activiteit
klasse. De methode-aanroep om naar te zoeken is isGooglePlayServicesAvailable
, die je aan een helper-methode kunt toevoegen zoals in het volgende fragment:
private boolean checkPlayServices () int resultCode = GooglePlayServicesUtil.isGooglePlayServicesAvailable (this); // ...
Je zou de methode kunnen noemen onCreate
, voordat u probeert het te maken GoogleAPIClient
Bijvoorbeeld via welke u toegang hebt tot de Play Services-bronnen en binnen onResume
. Als het gebruikersapparaat niet over de vereiste bronnen beschikt, worden ze via de Google Play Store hierom gevraagd.
Nadat u het ondersteuningsniveau op het gebruikersapparaat hebt gecontroleerd, kunt u een exemplaar van de GoogleAPIClient
klasse om te bellen op de Google Play-bronnen. De volgende voorbeeldcode demonstreert dit en zou kunnen worden opgenomen in onCreate
:
GoogleApiClient mijnClient = nieuwe GoogleApiClient.Builder (dit) .addApi (Plus.API) .addScope (Plus.SCOPE_PLUS_PROFILE) .addConnectionCallbacks (this) .addOnConnectionFailedListener (this) .build ();
Hiermee bereid je je app voor op toegang tot Google+ services, zoals je kunt zien in de Plus.API
uittreksel. De addScope
regel zal variëren, afhankelijk van wat uw app doet. Deze code stelt ook callbacks in voor het verbindingsproces. Je klas kan de volgende interfaces implementeren:
public class MainActivity breidt activiteit uit VerbindingsCallbacks, OnConnectionFailedListener
De klasse kan dan het onConnected
en onConnectionSuspended
callbacks voor het afhandelen van wijzigingen in verband met Play-services.
Om mislukkingen bij het verbinden met Play-services aan te pakken, zoals in gevallen waarin inloggen bij de gebruiker is vereist, kan uw klasse ook worden geïmplementeerd onConnectionFailed
, voor toegang tot verschillende standaardmethoden voor het oplossen van typische fouten. Sommige van deze methoden veroorzaken de onActivityResult
uit te voeren methode wanneer de gebruiker terugkeert naar de app, zodat u opnieuw kunt proberen om daar verbinding te maken.
Over het algemeen is uw Activiteit
klas moet verbinding maken met Play Services in onStart
en ontkoppel in onStop
via de GoogleAPIClient
klasse zoals in het volgende fragment:
myClient.connect ();
Voor bepaalde Play-services, waaronder Google+, moet u zich registreren om toegang te krijgen. Hiertoe meldt u zich aan bij de Google API's Console en klikt u op Maak een project, en voer een naam in. Nadat u het project hebt gemaakt, moet u worden doorgestuurd naar het project in de console.
Selecteer de APIs menupunt, zoeken Google+ API in de lijst en klik op de knop om deze in te schakelen. De status zou moeten veranderen in OP na het accepteren van de licentie. Als u op de API-lijst klikt, krijgt u een overzicht van wat u ermee kunt doen.
Selecteer vervolgens Geloofsbrieven en klik Maak een nieuwe klant-ID aan. Selecteer de Geïnstalleerde applicatie keuzerondje, selecteer Android als het type en voer je app-gegevens in. Nu moet u de Keytool-resource gebruiken om een SHA1-certificaat te genereren.
Tijdens de ontwikkeling kunt u de debug keystore gebruiken door de volgende code in een terminal in te voeren:
keytool -exportcert -alias androiddebugkey -keystore ~ / .android / debug.keystore -list -v
U moet ervoor zorgen dat dit de juiste locatie is voor uw debug keystore, het pad wijzigen als dit niet het geval is. Wanneer u deze opdracht uitvoert, wordt u om het wachtwoord gevraagd. invoeren android
voor de debug keystore en de vingerafdruk moet worden uitgevoerd naar de terminal.
Kopieer de SHA1
regel en plak het in de Ondertekening certificaat vingerafdruk in de API's-console. Schakel indien nodig deep linking in en klik vervolgens op de knop om de ID te maken. Een gedeelte verschijnt als titel Client-ID voor Android-applicatie. U hoeft de ID in uw app-code niet echt te gebruiken, maar u kunt een kopie hiervan bewaren voor uw eigen administratie.
Voordat u een beroep kunt doen op de Play Services-API's in uw toepassingscode, moet u de juiste machtigingen toevoegen aan het manifestbestand van uw project. De volgende voorbeelden tonen enkele typische gebruikscasussen, maar u moet de juiste machtigingen voor uw eigen project kiezen:
Uw project moet nu worden geconfigureerd om de API's voor Play Services aan te roepen die u nodig hebt. Je zult je structuur moeten structureren Activiteit
klassen anders, afhankelijk van wat uw apps doen. Bekijk de handleiding voor ontwikkelaars voor meer informatie hierover.
Vergeet niet om de volgende handleidingen te raadplegen om aan de slag te gaan met enkele beschikbare Play-services:
Als de Google-services waartoe u toegang wilt hebben geen deel uitmaken van de Play Services-bibliotheek, kunt u deze openen met behulp van de REST-API van Google.
Er zijn veel mogelijkheden met Google Play-services in Android-apps. Van gaming tot locatie en kaartservices, uw apps kunnen profiteren van de bestaande platformfuncties binnen de context van uw eigen gebruikersinterfaces en functionaliteit.
Het installatieproces lijkt misschien wat moeizaam, maar als u eenmaal bent ingesteld, kunt u zich richten op het bieden van deze services aan uw gebruikers.