Google I / O 2017 Aftermath Wat is er nieuw in Android Studio 3?

In deze reeks tips hebben we een aantal nieuwe Android-functies en -hulpmiddelen besproken die zijn aangekondigd op de Google I / O van dit jaar, die u kunt vinden. vandaag.

In deze post gaan we praktische ervaring opdoen met de belangrijkste nieuwe functies in Android Studio 3, door de preview van Android Studio 3.0 te verkennen.

Als je dit nog niet hebt gedaan, kun je de Preview downloaden van de officiële Android-website. Houd er rekening mee dat dit een vroege toegangsrelease is. Het wordt daarom niet aanbevolen om deze voor uw dagelijkse ontwikkelingswerk te gebruiken. 

Ingebouwde ondersteuning voor Kotlin

Een van de meest opwindende Android-aankondigingen van de Google I / O-keynote van dit jaar is dat Google Kotlin tot een eersteklas taal maakt voor Android-ontwikkeling. 

Hoewel u eerder Kotlin-ondersteuning aan Android Studio via een plug-in kon toevoegen, is voor Android Studio 3.0 Kotlin-ondersteuning ingebouwd, waardoor het nog eenvoudiger is om Kotlin voor Android-ontwikkeling te gebruiken.

Er zijn drie manieren om Kotlin te gebruiken in de preview van Android Studio 3.0:

Start een nieuw project met Kotlin

Ten eerste, als u een nieuw project aanmaakt, heeft de wizard voor het maken van projecten nu een Neem Kotlin-ondersteuning op checkbox.

Wanneer u deze optie selecteert, genereert Android Studio alle code die uw project nodig heeft om Kotlin te ondersteunen. Als u uw projectniveau opent build.gradle bestand, ziet u dat de versie van Kotlin die u gebruikt, is toegevoegd aan de buildscript sectie:

buildscript ext.kotlin_version = '1.1.2-4' repositories maven url 'https://maven.google.com' jcenter ()

En als je je moduleniveau opent build.gradle bestand, zult u merken dat hier ook enkele Kotlin-specifieke regels zijn toegevoegd:

plug-in toepassen: 'com.android.application' apply plugin: 'kotlin-android' ... dependencies compile fileTree (dir: 'libs', include: ['* .jar']) androidTestCompile ('com.android.support.test .espresso: espresso-core: 2.2.2 ', exclude group:' com.android.support ', module:' support-annotations ') compileren "org.jetbrains.kotlin: kotlin-stdlib-jre7: $ kotlin_version"

Converteer bestaande Java-bestanden naar Kotlin

De tweede methode is om een ​​bestaand Java-bestand in een Kotlin-bestand te converteren:

  • Selecteer het bestand dat u wilt converteren in Android Studio's Projectweergave.
  • kiezen Code> Converteer Java-bestand naar Kotlin-bestand van de Android Studio-werkbalk. Hiermee wordt het Java-bestand door een converter geleid en wordt de equivalente Kotlin-code gegenereerd.
  • Op dit moment geeft Android Studio een banner weer die u informeert dat Kotlin niet is geconfigureerd in uw project. Klik op de configureren link die in deze banner verschijnt.
  • kiezen Android met Gradle.
  • Kiezen van Alle modules, Alle modules met Kotlin-bestanden, of selecteer de specifieke module waarin u Kotlin wilt ondersteunen. 
  • Klik OK.

Voeg een Kotlin-klasse toe aan een bestaand project

De laatste methode is om een ​​nieuwe Kotlin-klasse te maken, door Controle-op de map klikken waar u uw klas wilt maken en vervolgens selecteren Nieuw> Kotlin-bestand / klasse. Nogmaals, als uw project niet is geconfigureerd om Kotlin te ondersteunen, geeft Android Studio het configureren banier.

En als u niet bekend bent met Kotlin en wilt weten waar het allemaal om draait, hebben we een hele reeks gepubliceerd die u door het proces van aan de slag gaan met de ontwikkeling van Kotlin voor Android leiden..

Een nieuwe Android Profiler 

Android Studio 3.0 Preview vervangt het vertrouwde Android Monitor-venster door een gloednieuw Android Profiler.

Selecteer om dit gereedschap te bekijken Beeld> Tool Windows> Android Profiler via de Android Studio-werkbalk of klik op de Android Profiler tabblad dat onder aan het IDE-venster verschijnt.

Net als bij Android Monitor kan de Android Profiler alleen communiceren met een actieve app, dus zorg ervoor dat de app die u wilt testen op een AVD of een verbonden smartphone of tablet wordt uitgevoerd en dat deze op dit moment zichtbaar op het scherm is. Selecteer het apparaat en het proces dat u wilt profileren met behulp van de vervolgkeuzemenu's.

Zodra u een proces heeft geselecteerd, koppelt de Android Profiler zich aan dat proces en geeft het een tijdlijn weer van het gebruik van uw netwerk, CPU en geheugen, die in realtime worden bijgewerkt. 

Als u meer informatie wilt over Netwerk, CPU of Geheugen, klikt u eenvoudig op dat gedeelte van de Android Profiler. Er wordt een nieuwe profiler gelanceerd die volledig is gewijd aan het door u gekozen onderwerp.. 

Netwerkprofiel

Deze Profiler toont een tijdlijn van uw netwerkactiviteit, toont de verzonden en ontvangen gegevens en het huidige aantal verbindingen. Houd er rekening mee dat Network Profiler momenteel alleen de HttpURLConnection- en OkHttp-bibliotheken ondersteunt, dus mogelijk kunt u de netwerkactiviteit van uw app niet bekijken als u een andere bibliotheek gebruikt.

CPU-profiler

Deze Profiler geeft het CPU-gebruik en de threadactiviteit van uw app weer. U kunt ook precies zien welke methoden worden uitgevoerd en welke CPU-bronnen elke methode gebruikt, door een methode-trace te registreren. 

Als u een trace wilt vastleggen, opent u het vervolgkeuzemenu en selecteert u een van de twee bemonsterd of geïnstrumenteerd, en klik vervolgens op de Record knop. Besteed enige tijd aan interactie met uw app, zorg ervoor dat u de acties uitvoert die u wilt opnemen en klik op de Stop met opnemen knop. De CPU Profiler toont vervolgens alle gegevens die tijdens deze bemonsteringsperiode zijn opgenomen.

Memory Profiler

Met deze Profiler kunt u geheugenlekken, geheugenverloop en ongewenste geheugentoewijzingspatronen identificeren door een grafiek weer te geven van het geheugengebruik van uw app. U kunt de Memory Profiler ook gebruiken om een ​​heap-dump te maken, die een momentopname biedt van de objecten die uw app heeft toegewezen, samen met hoeveel geheugen elk object gebruikt en waar verwijzingen naar elk object in uw code worden bewaard. Ten slotte kunt u de geheugentoewijzingen van uw app registreren door op te klikken Record geheugentoewijzingen knop.  

Maak standalone instant-app-modules

Met Android Instant-apps kunnen gebruikers applicaties direct via een URL uitvoeren, zonder eerst de applicatie te hoeven installeren. Met deze functie kunt u de belangrijkste functies van uw app beschikbaar maken voor meer gebruikers, terwijl u hopelijk in de verleiding komt om de volledige versie van uw app in het proces te downloaden. 

De eerste stap om de functionaliteit van Android Instant App toe te voegen aan uw project is om uw app te splitsen in kleinere modules, zodat gebruikers de mogelijkheid hebben om een ​​specifiek deel van uw project te downloaden. Aangezien het splitsen van uw app in meerdere, afzonderlijke modules niet bepaald gemakkelijk is, introduceert Android Studio 3.0 Preview een functie waarmee u elke klasse binnen uw toepassing kunt modulariseren: 

  • Open de klas die u wilt modulariseren en markeer de klassenaam.
  • Controle-Klik op de klasse en selecteer vervolgens Refactor> Modularize.
  • kiezen Voorbeeld om de exacte klassen, methoden en bronnen te zien die in deze nieuwe module zullen worden opgenomen.
  • Schakel indien nodig sommige van de items uit die u niet in deze module wilt opnemen. Als u een of meer items verwijdert, moet u meestal enige tijd besteden aan het aanpassen van de code van de resulterende module om te zorgen dat deze correct werkt.
  • Als u tevreden bent met uw selectie, kunt u uw module maken door op te klikken OK.

Verbeterde Java 8-ondersteuning 

Android Studio 3.0 Preview 1 biedt ingebouwde ondersteuning voor een subset van Java 8-taalfuncties en de externe bibliotheken die deze gebruiken, met name:

  • Lambda-expressies
  • Methode Referenties
  • Typ Annotaties
  • Standaard en statische interfacemethoden
  • Herhalende annotaties

Daarnaast zijn de volgende Java 8-functies compatibel met API-niveau 24 en hoger: 

  • java.lang.annotation.Repeatable
  • java.util.function
  • java.lang.reflect.Method.isDefault ()
  • java.lang.FunctionalInterface
  • java.util.stream
  • annotatedElement.getAnnotationsByType (klasse)

Om van deze verbeterde Java 8-ondersteuning te profiteren, moet je updaten naar versie 3.0.0-alpha1 (of hoger) van de Gradle-plug-in. Begin met het openen van uw gradle-wrapper.properties bestand en bijwerken van de distributionUrl:

distributionUrl = https \: //services.gradle.org/distributions/gradle-4.0-milestone-1-all.zip

Open vervolgens uw projectniveau build.gradle bestand en zorg ervoor dat u de nieuwe Maven-opslagplaats van Google gebruikt. Je moet ook updaten naar versie 3.0.0-alpha1 van de Gradle-plug-in: 

buildscript repositories maven url 'https://maven.google.com' jcenter () dependencies classpath 'com.android.tools.build:gradle:3.0.0-alpha1'

Als je de Jack-compiler eerder hebt ingeschakeld, moet je deze uitschakelen om te profiteren van de verbeterde Java 8-ondersteuning van Android Studio. Om Jack te verwijderen, opent u uw moduleniveau build.gradle bestand en verwijder de jackOptions blok:

android ... defaultConfig // Verwijder het volgende blok // jackOptions enabled true ...

Ten slotte moet u de Java 8 toevoegen compileOptions blokkeren voor uw build.gradle bestand, als u dat nog niet heeft gedaan:  

compileOptions sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8

Aangepaste lettertypen zijn nog eenvoudiger gemaakt

Google staat op het punt om het toevoegen van aangepaste lettertypen aan je app veel gemakkelijker te maken door lettertypen te upgraden naar een volledig ondersteund resourcetype in Android O. We hebben al onderzocht of werken met aangepaste lettertypen in detail, maar de preview van Android Studio 3.0 voegt een handige functie waarmee u nog eenvoudiger naar aangepaste lettertypen kunt zoeken en deze kunt toevoegen aan uw project:

  • Open een lay-outresourcebestand dat een bevat Tekstweergave.
  • Selecteer de Ontwerp tab.
  • Selecteer TextView in de lay-outeditor. De eigenschappen menu moet openen aan de linkerkant van het Android Studio-venster.
  • Ga naar de menu's textAppearance sectie en klik vervolgens op het bijbehorende pijlpictogram om dit gedeelte uit te vouwen. Open de fontFamily dropdown, en selecteer Meer lettertypen. Hiermee wordt een venster geopend waarin u door een bibliotheek met beschikbare lettertypen kunt bladeren.
  • Als u een lettertype aan uw project wilt toevoegen, selecteert u het en klikt u vervolgens op OK
  • Open je project res / font map, en u zult zien dat dit lettertype is toegevoegd aan uw project, klaar om door u te worden gebruikt.
  • Om dit lettertype toe te passen op ieder stuk tekst, voeg gewoon het attribuut toe android: fontFamily = "@ font / name-of-your-lettertype.” 

Andere opmerkelijke updates

Android Studio 3.0 Preview biedt ook een aantal handige nieuwe hulpmiddelen: 

APK-foutopsporing

Met deze tool wordt het eenvoudiger om APK's te profileren en debuggen - gewoon selecteren Bestand> Profiel of debug APK van de Android Studio-werkbalk en selecteer vervolgens de APK die u van dichterbij wilt bekijken. U kunt ook selecteren Profiel of debug APK van Android Studio's Welkom scherm.

Device File Explorer

U kunt deze tool gebruiken om te communiceren met het bestandssysteem van het aangesloten apparaat, zodat u bestanden kunt bekijken, kopiëren en verwijderen en ook bestanden kunt uploaden naar uw Android-apparaat. Als u deze tool wilt gebruiken, selecteert u de Device File Explorer naar de rechterbenedenhoek van het Android Studio-scherm, of selecteer Beeld> Tool Windows> Device File Explorer van de Android Studio-werkbalk.

Adaptive Icon Wizard

In Android O kunnen fabrikanten van originele apparatuur een masker toepassen op alle pictogrammen van de applicatiestarter op hun apparaat. Om er zeker van te zijn dat uw startpictogram correct wordt weergegeven, ongeacht het gebruikte masker, moet u een adaptief opstartpictogram opgeven. 

We hebben eerder gekeken naar het maken van adaptieve pictogrammen, maar de nieuwe Android Studio Preview introduceert een speciale wizard die het gemakkelijker maakt om deze adaptieve pictogrammen te bouwen. Om de wizard te starten, Controle-klik op uw project res map en selecteer Nieuw> Afbeelding-item. In het venster dat verschijnt, opent u de Pictogramtype dropdown en stel het in op Launcher Icons (Adaptive and Legacy). U kunt vervolgens uw aanpassingspictogram maken door een voorgrond- en achtergrondlaag te selecteren.

Conclusie

In deze tip hebben we enkele van de meest opwindende nieuwe gereedschappen en functies onderzocht die al beschikbaar zijn in Android Studio 3.0 Preview, inclusief ingebouwde ondersteuning voor de Kotlin-programmeertaal, verbeterde Java 8-ondersteuning en de geheel nieuwe Android Profiler. Met alle nieuwe functies en tools die beschikbaar zijn, staat de ontwikkeling van Android-apps op het punt nog spannender te worden!

Terwijl je hier bent, bekijk enkele van onze andere tutorials en onze videocursussen over Android app-ontwikkeling!