In het eerste deel van deze tweedelige serie hebben we onderzocht wat Android Wear is, hoe het werkt en hebben we ons verdiept in de nieuwe gebruikersinterface die het Android-team speciaal voor Android Wear heeft ontwikkeld. Ik heb ook een paar best practices gedeeld om in gedachten te houden wanneer je je ontwikkelt voor de wereld van Android-wearables.
In het tweede deel van deze serie brengt u uw nieuwe Android Wear-kennis in praktijk door twee voorbeeld-apps te maken die op verschillende manieren met Android Wear kunnen worden geïntegreerd.
De eerste app demonstreert de eenvoudigste manier om te beginnen met de ontwikkeling voor Android Wear, neemt een gewone handheld-app en breidt de meldingen uit zodat ze perfect verschijnen en functioneren op een gekoppeld Android Wear-apparaat.
In het tweede voorbeeld maak je een draagbare app op het volledige scherm door een Hello World-project te maken dat bestaat uit een draagbaar en een draagbaar onderdeel. Nadat je dit barebones-project hebt gemaakt, heb je alles in handen om verder te werken en het te ontwikkelen tot een complete draagbare app.
Deze tutorial maakt gebruik van Android Studio. Als u het nog niet hebt geïnstalleerd, kunt u de IDE downloaden van de officiële website van Android-ontwikkelaars.
Voordat je kunt ontwikkelen iets voor het draagbare platform moet je je ontwikkelomgeving voorbereiden door alle pakketten te installeren en bij te werken die je nodig hebt, zodat je Android Studio IDE up-to-date is.
Als u wilt controleren of u de nieuwste versie van Android Studio gebruikt, start u de IDE, klikt u op Android Studio in de werkbalk en selecteer Controleer op updates. Voor deze tutorial is een Android Studio-versie vereist 0.8 of hoger, maar idealiter zou u de nieuwste versie moeten hebben geïnstalleerd, zodat u kunt profiteren van de nieuwste functies en oplossingen.
Open vervolgens de Android SDK Manager en controleer of u de nieuwste versies van de volgende drie pakketten hebt:
Download en installeer alle beschikbare updates. Zodra deze pakketten up-to-date zijn, verschijnen er twee nieuwe pakketten in de SDK Manager:
Download en installeer beide pakketten.
Als u uw SDK Tools, Platform Tools en / of Build Tools-pakketten zojuist hebt bijgewerkt, maar de Android L- en Android 4.4.W-pakketten nog steeds niet ziet, sluit dan de SDK Manager en start deze opnieuw. Dit zou de twee nieuwe pakketten moeten afdekken.
Als u de Android-ondersteuningsbibliotheek nog niet hebt geïnstalleerd, doet u dit nu. Je vindt het in de SDK Manager's Extras categorie.
Ongeacht of u een draagbare app of een draagbare app aan het bouwen bent die wearable-ready meldingen genereert, u zult een manier nodig hebben om de draagbare delen van uw project te testen. Dit is redelijk eenvoudig dankzij de vertrouwde AVD Manager, die alles heeft wat u nodig hebt om een draagbaar apparaat te emuleren.
Zelfs als u een fysieke Android Wear-smartwatch bezit, hebt u een manier nodig om uw project op de verschillende Android Wear-schermen te testen, dus u moet toch ten minste één AVD maken. Op dit moment betekent dit alleen dat u uw project moet testen op een rond en een vierkant scherm, maar deze lijst zal waarschijnlijk groeien naarmate er meer Android Wear-apparaten worden uitgebracht.
Als u een Android Wear AVD wilt maken, start u AVD Manager en klikt u op creëren. Geef uw AVD een naam en voer de volgende instellingen in:
Nadat u uw AVD hebt gemaakt, start u deze en laat u deze op de achtergrond actief.
Hoewel u nu een Android Wear-apparaat emuleert, is wat u niet emuleert de verbinding die bestaat tussen een fysieke wearable en een gekoppelde smartphone of tablet.
Als u de draagbare onderdelen van uw project nauwkeurig wilt testen, moet u deze verbinding emuleren. Dit is waar de Android Wear-partnerapp wordt geleverd. Deze is beschikbaar op Google Play.
Nadat u de Android Wear-metageapp op uw smartphone of tablet hebt geïnstalleerd, krijgt dit handheld-apparaat de mogelijkheid om met een draagbare AVD te communiceren op dezelfde manier als een gekoppeld handheld-apparaat communiceert met een fysieke wearable.
Open op uw handheld-apparaat de Google Play Store en installeer de officiële Android Wear-app.
Schakel USB-foutopsporing op uw smartphone of tablet in en gebruik de USB-kabel om uw handheld-apparaat aan te sluiten op uw computer.
Voordat uw Android Wear AVD kan communiceren met uw rekenmachine, moet u de TCP-poort openen 5601 op jouw computer. Lancering Terminal op OS X of de Opdrachtprompt op Windows, en verander de map zodat deze naar uw verwijst platform-gereedschappen map:
cd Gebruikers / jessica / Downloads / adt-bundle / sdk / platform-tools
Merk op dat de bovenstaande opdracht zal variëren afhankelijk van waar de Android SDK zich op uw ontwikkelmachine bevindt.
Nu wijst de Terminal of Command Prompt naar de juiste locatie, open de benodigde poort door een adb
commando zoals hieronder getoond.
./ adb -d forward tcp: 5601 tcp: 5601
Start de Android-partner-app op uw handheld-apparaat. Tik op het horlogepictogram in de werkbalk van de app (gemarkeerd in de screenshot hieronder) en wacht op Verbonden verschijnen in de werkbalk.
Wanneer u uw handheld op een draagbare AVD wilt aansluiten, moet u dit proces herhalen. Bespaar uzelf wat tijd door de emulator op de achtergrond te laten lopen en uw smartphone of tablet op uw computer aan te sluiten terwijl u door deze zelfstudie werkt.
Voordat u doorgaat met de volgende stap, is het de moeite waard om wat tijd te nemen om te onderzoeken hoe een handheld en een draagbare computer op elkaar inwerken, vooral als dit uw eerste praktische ervaring met Android Wear is.
Wanneer u een draagbare AVD op een draagbaar apparaat aansluit, begint de AVD automatisch met het ophalen van meldingen van de verbonden smartphone of tablet en geeft deze weer als kaarten in zijn geëmuleerde Context Stream. Een goede manier om vertrouwd te raken met Android Wear is om wat tijd te besteden aan het doornemen van deze gepersonaliseerde meldingskaarten.
Om een veegactie uit te voeren, gebruikt u uw muis om de notitiekaarten omhoog en omlaag te slepen. U kunt ook de actieknoppen van een meldingskaart bekijken, plus eventuele extra pagina's, door de kaart naar links te slepen / slepen.
U kunt aanvullende meldingskaarten verkennen door een selectie demokaarten naar uw AVD te sturen. Als u een demokaart wilt verzenden, opent u de bijbehorende app en tikt u op het pictogram met de driepuntjes in de rechterbovenhoek. kiezen Demokaarten en kies een kaart uit de lijst. De demokaart verschijnt dan in de AV van uw AVD. Zodra een demokaart op de AVD arriveert, functioneert deze precies zoals een gewone meldingskaart.
Android Wear neemt een proactieve houding aan bij het ophalen van meldingen van gekoppelde Android-smartphones of -tablets en deze weer te geven als kaarten in de contextstroom. Als uw app echter niet expliciet Android Wear ondersteunt, is er geen garantie dat de meldingen correct worden weergegeven en functioneren op een Android Wear-apparaat.
Om de best mogelijke ervaring te bieden voor alle Android Wear-gebruikers die mogelijk in contact komen met uw app, moet u handheld-meldingen maken die naadloos kunnen worden uitgebreid naar een gekoppeld draagbaar apparaat, als dat nodig is. In de volgende paragrafen zal ik u laten zien hoe u een voorbeeld van een handheld-app kunt maken die een wearable-ready melding kan activeren.
Deze voorbeeldapp leeft op de smartphone of tablet van de gebruiker, dus begin met het maken van een eenvoudig Android-project. Open Android Studio's het dossier menu en selecteer Nieuw project. Geef uw project een naam en klik volgende. kiezen Telefoon en tablet, kies de minimale SDK die uw app zal ondersteunen en klik op volgende. kiezen Lege activiteit en klik volgende. Geef je activiteit een naam. Voor de doeleinden van deze zelfstudie gebruik ik Mijn activiteit. Klik Af hebben om Android Studio het project te laten maken.
Om een wearable-ready-melding te maken, heeft uw project toegang tot de ondersteuningsbibliotheek nodig. Open je project build.gradle bestand en voeg de ondersteuningsbibliotheek toe aan het gebied afhankelijkheden, zoals hieronder weergegeven.
afhankelijkheden compile fileTree (dir: 'libs', include: ['* .jar']) compileer 'com.android.support:support-v4:20.0+'
Op dit punt zou Android Studio u moeten vragen om de wijzigingen die u in het build.gradle-bestand hebt gemaakt te synchroniseren, dus klik op Synchroniseer nu bericht wanneer het verschijnt. Als de IDE u dit niet vraagt, moet u uw wijzigingen nog steeds synchroniseren door Android Studio's te openen het dossier menu en klikken Synchroniseren.
Deze voorbeeldapp bestaat uit een knop waarmee de melding wordt geactiveerd. Om deze eenvoudige gebruikersinterface te maken, opent u de app> src> hoofd> res> layout> activity_my.xml bestand en voer het volgende in:
Deze gebruikersinterface verwijst naar een tekenreeksbron, dus open de Waarden> strings.xml bestand en voeg het volgende toe:
Houd Wearable op de hoogte
U bent nu klaar om uw wearable-ready melding te maken. Open app> src> hoofd> java> MyActivity en importeer de klassen die u zult gebruiken om uw app te maken. De eerste paar zouden al bekend moeten zijn.
import android.app.Activity; import android.os.Bundle; import android.view.View; importeer android.widget.Button;
Aangezien u een melding gaat maken die wearables ondersteunt, moet u ook enkele klassen uit de ondersteuningsbibliotheek importeren, zoals hieronder wordt getoond.
import android.support.v4.app.NotificationCompat; importeer android.support.v4.app.NotificationManagerCompat;
Nu is het tijd om uw melding te maken met behulp van de NotificationCompat
klasse. Bekijk de implementatie van de Mijn activiteit
klasse hieronder weergegeven.
pakket com.example.jessica.myapplication; import android.app.Activity; import android.os.Bundle; import android.support.v4.app.NotificationCompat; importeer android.support.v4.app.NotificationManagerCompat; import android.view.View; importeer android.widget.Button; public class MyActivity breidt activiteit uit @Override beschermde ongeldig onCreate (bundel savedInstanceState) super.onCreate (savedInstanceState); setContentView (R.layout.activity_my); Button wearButton = (Button) findViewById (R.id.wearButton); wearButton.setOnClickListener (new View.OnClickListener () @Override public void onClick (View v) int notificationId = 001; NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder (MyActivity.this) .setSmallIcon (R.drawable.ic_launcher). setContentTitle ("Title") .setContentText ("Android Wear Notification"); NotificationManagerCompat notificationManager = NotificationManagerCompat.from (MyActivity.this); notificationManager.notify (notificationId, notificationAgent.build ()););
De volgende stap is om uw project te testen op draagbare en draagbare platforms. Start uw wearable AVD en sluit deze aan op uw draagbare apparaat voordat u verder gaat, als u dat nog niet hebt gedaan.
Open de Rennen menu en selecteer Voer 'app' uit. In de Kies Apparaat venster, selecteer uw handheld-apparaat. Na een paar seconden verschijnt uw app op de verbonden smartphone of tablet.
Tik op de app's om die belangrijke melding te testen Houd Wearable op de hoogte knop. Er verschijnt een melding in de meldingenlade van de smartphone of tablet. Open de berichtenlade om te controleren of dit gedeelte van de melding correct wordt weergegeven.
Blader op uw Android Wear AVD door de meldingskaarten totdat u de kaart vindt die is gegenereerd op basis van uw wearable-ready melding. Controleer nogmaals of deze melding correct wordt weergegeven. En je bent klaar.
Hoewel Google ontwikkelaars aanmoedigt om hun apps te integreren met Android Wear's Context Stream, het is mogelijk om apps op volledig scherm te maken voor Android Wear-apparaten.
Draagbare volledig scherm-apps bestaan eigenlijk uit een draagbare en een draagbare component. De gebruiker installeert de handheld-app op zijn smartphone of tablet en het systeem pusht automatisch de draagbare component naar het gekoppelde Android Wear-apparaat. Als u een draagbaar app op volledig scherm wilt maken, moet u een handheld-app maken die een draagbaar onderdeel bevat.
Dit klinkt misschien ingewikkeld, maar je kunt dit soort twee-in-één-projecten maken door de juiste opties te selecteren in de projectwizard van Android Studio:
Wanneer u de wizard voor het maken van projecten vertelt om te maken Telefoon en tablet en Slijtage componenten, creëert het twee modules:
Als u een van beide modules opent, ziet u dat Android Studio de module al heeft gevuld met een groot aantal klassen, mappen en bronnen.
Android Studio genereert niet alleen automatisch de lay-out voor beide modules, maar ook met een Hello World-code. Hoewel je deze Hello World-code vervangt, blijft het testen van een project dat bestaat uit draagbare en draagbare inhoud hetzelfde. Dit is een goede gelegenheid om te leren hoe je dit soort projecten kunt testen.
Zorg er voordat u begint voor dat uw draagbare AVD actief is en dat deze is aangesloten op uw handheld-apparaat.
Om de handheld-module van het project te testen:
Om de draagbare component van het project te testen:
Let op: als uw project niet automatisch verschijnt, moet u mogelijk meerdere keren over het scherm vegen om het te vinden.
Hoewel het normaal is om af en toe een bug of bekend probleem tegen te komen wanneer je aan een softwareproject werkt, is de kans groot dat je nog veel meer problemen tegenkomt wanneer je je ontwikkelt voor Android Wear, simpelweg omdat je een IDE dat nog in bèta is om te ontwikkelen voor een geheel nieuwe versie van het Android-besturingssysteem.
In dit gedeelte deel ik een oplossing voor een bekend probleem, samen met enkele algemene tips en trucs om u te helpen andere problemen te overwinnen waar u tegenaan loopt..
Op het moment van schrijven, wanneer u een project met een draagbare module maakt of wearable-ready code toevoegt aan een rekenmachineproject, kunt u een bekend probleem tegenkomen met het bestand voor het maken van verstoppingen. Dit probleem zorgt ervoor dat de Gradle-build mislukt met de volgende fouten:
Kon geen enkele versie vinden die overeenkomt met com.google.android.support: wearable:+. Kon geen enkele versie vinden die overeenkomt met com.google.android.gms: play-services-wearable:+.
De tussenoplossing bestaat uit het toevoegen van een URL aan de IDE-lijst met door de gebruiker gedefinieerde sites. Start de SDK Manager en selecteer vervolgens Hulpmiddelen via de werkbalk en klik op Beheer add-on-sites.
Op dit punt kunt u een ander probleem tegenkomen, waarbij de SDK Manager wordt geopend, maar de werkbalk niet. Als u SDK Manager hebt geselecteerd, maar de werkbalk niet boven aan uw scherm verschijnt, moet u de SDK Manager minimaliseren en vervolgens opnieuw selecteren. De werkbalk moet dan verschijnen en u kunt selecteren Hulpmiddelen> Add-on-sites beheren.
In de Add-on-sites venster, klik op de Door de gebruiker gedefinieerde sites knop, klik nieuwe en voeg https://dl-ssl.google.com/android/repository/addon-play-services-5.xml toe aan de lijst met URL's. Klik OK af te maken.
Als de fout aanhoudt, controleer dan of u de nieuwste versie van de Google Play-services en Google Repository pakketten geïnstalleerd. Als u al deze stappen hebt voltooid en nog steeds de Storingsfouten ziet, is het mogelijk dat uw IDE de wijzigingen die u in de ontwikkelomgeving heeft aangebracht, niet heeft geregistreerd. Het sluiten en opnieuw starten van Android Studio moet dit oplossen.
Als u een ander Gradle-foutbericht tegenkomt of als u een heel ander probleem tegenkomt, volgen hier een aantal algemene oplossingen die kunnen helpen uw project weer op het goede spoor te krijgen:
Als sommige van uw Android SDK-pakketten zijn verouderd, is het mogelijk dat u een probleem tegenkomt dat al is opgelost door een bijgewerkt pakket. Start uw SDK Manager op en controleer op updates.
Als u enkele wijzigingen in uw Android SDK-pakketten hebt aangebracht en nog steeds hetzelfde probleem ondervindt, probeert u uw IDE te sluiten en opnieuw te starten, zodat u weet dat Android Studio uw wijzigingen heeft geregistreerd.
Omdat Android Studio in bèta is, is het vooral belangrijk dat u het up-to-date houdt, omdat de meeste updates nieuwe oplossingen bieden. Selecteer als u wilt controleren of u de meest recente versie van Android Studio gebruikt Android Studio> Controleren op updates ... .
U hebt nu alles wat u nodig hebt om ondersteuning voor Android Wear toe te voegen aan uw eigen handheld-projecten. Als je deze zelfstudie hebt gevolgd en besluit om wearable-ready-meldingen te maken, zijn je handheld-Android-apparaat en AVD Manager al klaar om je wearable-ready code te testen.
Als u liever Android-apps voor volledig scherm ontwikkelt, beschikt u al over de basisstructuur, dus waarom zou u niet verder werken aan de Hello World-voorbeeldapp??