Android Studio 2.2 en version finale : Nougat, interfaces et performances

Android Studio 2.2 en version finale : Nougat, interfaces et performances

Un petit Espresso ?

Avatar de l'auteur
Vincent Hermann

Publié dans

Logiciel

20/09/2016 4 minutes
13

Android Studio 2.2 en version finale : Nougat, interfaces et performances

Après plusieurs mois de test, Google vient de publier la version 2.2 finale de son Android Studio. Une version particulièrement importante qui se focalise d’un côté sur les performances, et de l’autre sur une simplification de la conception des interfaces.

La première bêta d’Android Studio 2.2 a été mise en ligne en mai dernier, dans la foulée de la conférence I/O. il aura finalement quatre mois pour la finaliser, et on comprend vite pourquoi : il fallait accompagner les nouveautés de Nougat. Maintenant qu’Android 7.0 a officiellement commencé sa carrière, les développeurs disposent d’une version stabilisée de l’environnement intégré correspondant. Notez que les API étaient finalisées depuis le mois dernier.

Simplifier la création des interfaces

Pour simplifier la vie des développeurs et réduire l’écart qu’il peut y avoir dans les applications, Google a ajouté dans Android Studio 2.2 un nouveau mode de composition graphique. Le Layout Editor laisse l’utilisateur choisir des widgets dans un panneau pour les amener ensuite sur le plan de conception, ou dans l’arborescence des composants. Cette construction est visuelle, le code étant automatiquement généré, avec la possibilité de le modifier évidemment.

Le Layout Editor est accompagné par le Constraint Layout, qui permet de gérer les contraintes de manière automatisée lors du placement des éléments graphiques. Il calcule notamment les dispositions des éléments les uns par rapport aux autres, pour créer un ensemble « harmonieux ». Ce qui devrait permettre aux développeurs sans réelle passion pour les interfaces de proposer rapidement un ensemble cohérent.

android studio

Instant Run plus rapide et analyse des APK

Autre grosse amélioration de cette version 2.2, Instant Run. La fonction, qui permet normalement de tester immédiatement son code dans l’émulateur fourni, se veut beaucoup plus rapide. Google la décrit également comme plus fiable, ce que les développeurs apprécieront. Instant Run était la grande nouveauté d’Android Studio 2.0, mais ne tenait pas forcément toutes ses promesses. L’éditeur encourage d’ailleurs les développeurs à réactiver Instant Run pour lui donner une nouvelle chance.

Sur une partie plus technique, les développeurs auront de nouveaux outils à disposition pour optimiser le code ou le tester. L’APK Analyzer permet d’inspecter le contenu des paquets APK pour mieux visualiser par exemple la place prise par chaque composant, ou comparer deux versions d’un même APK. Le développeur pourra également analyser la structure des fichiers Dex, les fichiers compilés de ressources ou encore AndroidManifest.xml, vérifier ce qui coince éventuellement avec ProGard ou encore éviter la limite des 64K sur les méthodes. Idéalement, Google espère que son Analyzer aidera les développeurs à réduire le poids de leurs applications.

android studio

On peut enfin enregistrer des suites de tests

La liste des nouveautés est assez longue et contient par exemple le support des principales nouveautés de Java 8, la prise en charge de compilation incrémentielle et des annotations personnalisées pour Jack, la visualisation du comportement de chaque nœud du manifeste dans le Merged Manifest Viewer, un support amélioré du C++ ou encore l’arrivée expérimentale d’un cache pour la compilation, évidemment optionnel. Dans le domaine des fonctionnalités non finalisées, notez également la bêta du GPU Debugger, qui permet maintenant de récupérer un flux de commandes OpenGL ES sur un appareil Android pour l’analyser. L’état précis du GPU peut en outre être inspecté.

Les développeurs seront particulièrement satisfaits de pouvoir enregistrer enfin l’ensemble des tests pour les réutiliser plus tard. Espresso Test Recorder permet notamment de stocker une série de manipulations sur l’interface pour automatiser des simulations répétitives d’actions utilisateur. La séquence à la manière d’une vidéo, Android Studio générant automatiquement à la fin la suite de tests. Cette dernière peut être réalisée localement ou sur un serveur, y compris avec Firebase Test Lab.

La mise à jour disponible depuis l'éditeur

Android Studio 2.2 peut être installé depuis l’outil intégré de vérification des mises à jour. La liste des nouveautés peut de son côté être consultée depuis le site officiel. Si vous souhaitez l’installer pour la première fois, il suffira de le récupérer en cliquant sur le lien ci-dessous.

Écrit par Vincent Hermann

Tiens, en parlant de ça :

Sommaire de l'article

Introduction

Simplifier la création des interfaces

Instant Run plus rapide et analyse des APK

On peut enfin enregistrer des suites de tests

La mise à jour disponible depuis l'éditeur

Fermer

Commentaires (13)


ce qui me fait le plus plaisir c’est le GPU debugger, qu’est ce que j’avais galéré à faire des petits cubes en OpenGL <img data-src=" />


L’éditeur visuel a l’air sympas mais est-ce aussi parfait que celui de visual studio et son xaml ? <img data-src=" />



Rien que pour ça j’avais laissé tomber le dev android <img data-src=" />


Ce petit wysiwyg m’a l’air plutôt sympa. Faut que je teste ça !








Folgore a écrit :



L’éditeur visuel a l’air sympas mais est-ce aussi parfait que celui de visual studio et son xaml ? <img data-src=" />



Rien que pour ça j’avais laissé tomber le dev android <img data-src=" />





Non.

Il y a une très grosse amélioration mais on est très loin d’un Visual Studio. J’ai essayé de m’y mettre mais j’ai pas mal galèré par moment, si bien que je suis revenu sur du RelativeLayout (avec lequel je vais beaucoup plus vite, directement en XML).



xcode fait pas mal non plus.


Instant Run <img data-src=" />


Ouais, Google part de loin par rapport à la concurrence et rame pas mal pour la rattrapper. C’est pas encore pour cette fois, mais ça viendra.


Mouais, dès que tu utilises des libs qui font un peu de réflexion Instant Run casse tout. Typiquement Otto ou bien SugarOrm.

Peut-être qu’il faut juste attendre une mise à jour de ces libs, mais en attendant le plus simple, c’est désactiver instant Run.



C’est con, parce que sur le principe de base, c’était quand même une feature assez géniale.


instant run n’a jamais fonctionné chez moi totalement

tu fais des modifs ce n’est pas appliqué, tu ne &nbsp;comprends pas, ce n’est pas logique

faut faire un clean, et là ca marche



en clair je l’ai désactivé mais je pense le réactiver

en tout cas ils nous invitent à le faire dans le patch note


Pareil instant run ne fonctionnait pas très bien chez moi au début.

Je l’ai ré-activé depuis 1 mois, ça fonctionne bien mieux, si j’ai un doute que mes modifications aient été prises en compte je fais un clean.

A voir ce que ça donne avec cette nouvelle version mais apparemment beaucoup de bugs on été corrigés.



J’avais essayé de le Constraint Layout à sa sortie mais même pour remplacer un LinearLayout Vertical je n’y arrivais pas donc j’ai vite laisser tomber et je suis retourner au bon vieux XML. Faut que je teste à nouveau.


Pas encore essayé le Contraint Layout mais j’ai peur que cela soit aussi chiant que sur Xcode… perso, j’adore le XML (peut-être par mon expérience en html?), j’arrive à faire tout ce que je souhaite alors qu’avec les contraintes, je galère pour des choses simples… Les contraintes sont très souvent mal identifiables graphiquement, ça devient vite bordélique, tu te plantes sur une contrainte, ça casse tout le reste… et bonjour pour trouver celle-ci qui casse tout…


Très sincèrement, j’ai l’impression que Microsoft a toujours 10 ans d’avances sur tout le monde au niveau des frameworks IHM et des outils (quand Blend ne crashe pas <img data-src=" /> ).

Je dois développer sur Android, et je désespère de voir que faire un simple style uniforme entre les différentes versions d’Android est une plaie, que composer des styles de composants graphiques est laborieux, sans parler de la création d’animations…

Je n’ai toujours pas trouvé comment intégrer un profil de designer graphiste dans le développement, là où Blend le permet très bien avec assez peu de formation.


Je suis passé sur Xamarin + Visual Studio (qui n’a pas encore de designer XAML graphique pour les Xamarin.Forms), mais l’évolution de AS est vraiment sympa ! :)