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.
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:
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"
De tweede methode is om een bestaand Java-bestand in een Kotlin-bestand te converteren:
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..
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..
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.
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.
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.
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:
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:
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
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:
Tekstweergave
.android: fontFamily = "@ font / name-of-your-lettertype.”
Android Studio 3.0 Preview biedt ook een aantal handige nieuwe hulpmiddelen:
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.
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.
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.
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!