android-studio download - Qu'est-ce que Gradle dans Android Studio?




project sync (22)

Vous pouvez trouver tout ce que vous devez savoir sur Gradle ici: Gradle Plugin User Guide

Objectifs du nouveau système de construction

Les objectifs du nouveau système de construction sont:

  • Facilitez la réutilisation du code et des ressources
  • Facilitez la création de plusieurs variantes d'une application, que ce soit pour une distribution multi-apk ou pour différentes variantes d'une application
  • Facilitez la configuration, l'extension et la personnalisation du processus de construction
  • Bonne intégration IDE

Pourquoi Gradle?

Gradle est un système de construction avancé ainsi qu'une boîte à outils de construction avancée permettant de créer une logique de construction personnalisée à l'aide de plugins.

Voici quelques-unes de ses caractéristiques qui nous ont fait choisir Gradle:

  • Langage spécifique au domaine (DSL) pour décrire et manipuler la logique de construction
  • Les fichiers de construction sont basés sur Groovy et permettent le mélange d'éléments déclaratifs à travers le DSL et l'utilisation de code pour manipuler les éléments DSL afin de fournir une logique personnalisée.
  • Gestion intégrée des dépendances via Maven et / ou Ivy.
  • Très souple. Permet d'utiliser les meilleures pratiques mais ne force pas sa propre façon de faire les choses.
  • Les plugins peuvent exposer leur propre DSL et leur propre API pour les fichiers de construction à utiliser.
  • Bonne API d'outillage permettant l'intégration de l'IDE

Gradle est un peu confus pour moi et aussi pour le nouveau développeur Android. Quelqu'un peut-il expliquer ce que Gradle dans Android Studio est et quel est son but? Pourquoi Gradle est-il inclus dans Android Studio?


Gradle est un système de construction avancé ainsi qu'une boîte à outils de construction avancée permettant de créer une logique de construction personnalisée grâce à des plugins!

Avantages:

  • Dsl - Langage spécifique au domaine, basé sur groovy
  • DAG - Graphique acyclique dirigé
  • Constructions incrémentielles
  • Modèle de domaine extensible
  • Gradle est toujours à jour
  • Avant l'exécution d'une tâche, Gradle prend un instantané de l'entrée et de la sortie de sa tâche.
  • Si l'instantané a changé ou s'il n'existe pas, Gralde ré-exécute cette tâche.

Entrées de manifeste

Grâce à la DSL, il est possible de configurer les entrées de manifeste suivantes:

Construire une variante

Par défaut, le plug-in Android configure automatiquement le projet pour générer à la fois une version de débogage et une version de l'application.

Dépendances

  1. Dépendances locales

Si vous avez des archives binaires dans votre système de fichiers local dont dépend un module, comme des fichiers JAR, vous pouvez déclarer ces dépendances dans le fichier de construction de ce module.

  1. Dépendances à distance:

Tout d'abord, le référentiel doit être ajouté à la liste, puis la dépendance doit être déclarée de telle sorte que Maven ou Ivy déclarent leurs artefacts.


Un avantage de Gradle que j'ai trouvé est:

Gradle a été conçu pour des builds multi-projets qui peuvent devenir assez volumineux et supporte des builds incrémentaux en déterminant intelligemment quelles parties de l'arbre de build sont à jour, de sorte que toute tâche dépendante de ces parties n'aura pas besoin d'être re -réalisé.


Gradle is an automated build toolkit that allows the way in which projects are built to be configured and managed through a set of build configuration files. This includes defining how a project is to be built, what dependencies need to be fulfilled for the project to build successfully and what the end result (or results) of the build process should be. The strength of Gradle lies in the flexibility that it provides to the developer. The Gradle system is a self-contained, command-line based environment that can be integrated into other environments through the use of plug-ins. In the case of Android Studio, Gradle integration is provided through the appropriately named Android Studio Plug-in.

Bien que le plug-in Android Studio permette d'initier et de gérer les tâches Gradle à partir d'Android Studio, l'encapsuleur de ligne de commande Gradle peut toujours être utilisé pour créer des projets basés sur Android Studio, y compris sur les systèmes sur lesquels Android Studio n'est pas installé.

Les règles de configuration pour construire un projet sont déclarées dans les fichiers de construction Gradle et les scripts basés sur le langage de programmation Groovy.


Réponse courte

Gradle est un système de construction.

Longue réponse

Avant Android Studio, vous utilisiez Eclipse à des fins de développement et il est probable que vous ne sachiez pas comment créer votre APK Android sans Eclipse.

Vous pouvez le faire sur la ligne de commande, mais vous devez apprendre ce que chaque outil (dx, aapt) fait dans le SDK. Eclipse nous a tous sauvés de ces détails bas niveau mais importants, fondamentaux en nous donnant leur propre système de construction.

Maintenant, vous êtes-vous déjà demandé pourquoi le dossier res est dans le même répertoire que votre dossier src ?

C'est là que le système de construction entre dans l'image. Le système de compilation prend automatiquement tous les fichiers sources ( .java ou .xml ), puis applique l'outil approprié (par exemple, prend les fichiers de classe java et les convertit en fichiers dex ), et les regroupe tous en un fichier compressé, notre APK bien-aimé.

Ce système de construction utilise certaines conventions: un exemple est de spécifier le répertoire contenant les fichiers source (dans le dossier \src Eclipse) ou les fichiers de ressources (dans le dossier Eclipse c'est \res ).

Maintenant, afin d'automatiser toutes ces tâches, il doit y avoir un script; vous pouvez écrire votre propre système de construction en utilisant des scripts shell dans Linux ou la syntaxe des fichiers batch dans Windows. Je l'ai?

Gradle est un autre système de construction qui prend les meilleures caractéristiques des autres systèmes de construction et les combine en un seul. Il est amélioré en fonction de leurs lacunes. C'est un système de construction basé sur JVM , ce qui signifie que vous pouvez écrire votre propre script en Java, qui est utilisé par Android Studio.

Une chose cool à propos de gradle est que c'est un système basé sur un plugin . Cela signifie que si vous avez votre propre langage de programmation et que vous voulez automatiser la tâche de construire un paquet (sortie comme un JAR pour Java) à partir de sources, vous pouvez écrire un plugin complet en Java ou Groovy (ou Kotlin, voir here ), et le distribuer au reste du monde.

Pourquoi Google l'a-t-il utilisé?

Google a vu l'un des systèmes de construction les plus avancés sur le marché et s'est rendu compte que vous pouviez écrire vos propres scripts avec peu ou pas de courbe d'apprentissage, et sans apprendre Groovy ni aucune autre nouvelle langue. Ils ont donc écrit le plugin Android pour Gradle.

Vous devez avoir vu le (s) fichier (s) build.gradle dans votre projet. C'est là que vous pouvez écrire des scripts pour automatiser vos tâches. Le code que vous avez vu dans ces fichiers est du code Groovy. Si vous écrivez System.out.println("Hello Gradle!"); alors il imprimera sur votre console.

Que pouvez-vous faire dans un script de construction?

Un exemple simple est que vous devez copier des fichiers d'un répertoire à un autre avant que le processus de construction proprement dit ne se produise. Un script de construction Gradle peut le faire.


Gradle est une boîte à outils de construction automatisée qui peut s'intégrer dans de nombreux environnements différents, non seulement pour les projets Android.

Voici quelques choses que vous pouvez faire avec Gradle.

  • Configuration minimale requise pour les nouveaux projets car Gradle a des configurations par défaut pour vos projets de studio Android.

  • Déclaration de dépendance Vous pouvez déclarer des fichiers jar de dépendance ou des fichiers de bibliothèque hébergés sur un serveur local ou distant.

  • Gradle génère automatiquement un répertoire de test et un test APK de la source de votre projet.

  • Si vous ajoutez toutes les informations nécessaires, telles que keyPassword et keyAlias , à votre fichier de construction Gradle, vous pouvez utiliser Gradle pour générer des fichiers APK signés.

  • Gradle peut générer plusieurs fichiers APK avec des configurations de paquet et de construction différentes à partir d'un seul module.


par @Brian Gardner:

Gradle est un outil de construction complet et un gestionnaire de dépendances pour la programmation de projets. Il a un langage spécifique au domaine basé sur Groovy. Gradle fournit également un support de construction par convention pour de nombreux types de projets, y compris Java, Android et Scala.

Caractéristique de Gradle:

  1. Gestion des dépendances
  2. Utiliser la fourmi de Gradle
  3. Gradle Plugins
  4. Plugin Java
  5. Plugin Android
  6. Constructions multi-projets

The Android build system compiles app resources and source code, and packages them into APKs that you can test, deploy, sign, and distribute. Android Studio uses Gradle , an advanced build toolkit, to automate and manage the build process, while allowing you to define flexible custom build configurations. Each build configuration can define its own set of code and resources, while reusing the parts common to all versions of your app. The Android plugin for Gradle works with the build toolkit to provide processes and configurable settings that are specific to building and testing Android applications.


In plain terms, Gradle is a tool provided by Android Studio in order to implement two important processes:

  1. Build our projects
  2. Package AndroidManifest.xml,res folder,and binary code into a specially formatted zip file called APK

Gradle est une boîte à outils de construction avancée pour android qui gère les dépendances et vous permet de définir une logique de construction personnalisée. Les fonctionnalités sont similaires à 1. Personnaliser, configurer et étendre le processus de construction. 2. Créez plusieurs fichiers APK pour votre application avec des fonctionnalités différentes en utilisant le même projet. 3. Réutilisez le code et les ressources. référez-vous à ce lien http://developer.android.com/sdk/installing/studio-build.html


Gradle est au langage JVM Groovy ce que Ant est à Java. Fondamentalement, c'est l'outil de construction de Groovy. Contrairement à Ant, il est basé sur le langage Groovy complet. Vous pouvez, par exemple, écrire du code de script Groovy dans le script Gradle pour faire quelque chose plutôt que de dépendre d'un langage de domaine spécifique.

Je ne connais pas l'intégration spécifique d'IntelliJ, mais imaginons que vous puissiez "étendre" Groovy de telle sorte que vous puissiez écrire des primitives de langage "build" spécifiques et qu'elles deviennent simplement une partie du langage Groovy. (La métaprogrammation de Groovy est toute une discussion en soi.) IntelliJ / Google pourrait utiliser Gradle pour construire un langage de construction de très haut niveau, mais c'est un langage basé sur un standard ouvert et extensible.


Voici une explication détaillée sur ce qui est Gradle et comment l'utiliser dans un studio android.

Explorer les fichiers de Gradle

  1. Chaque fois que vous créez un projet dans Android Studio, le système de génération génère automatiquement tous les fichiers de construction Gradle nécessaires.

Gradle Build Fichiers

  1. Les fichiers de construction Gradle utilisent un Domain Specific Language or DSL pour définir une logique de construction personnalisée et interagir avec les éléments spécifiques à Android du greffon Android pour Gradle.

  2. Les projets Android Studio comprennent un ou plusieurs modules, qui sont des composants que vous pouvez créer, tester et déboguer indépendamment. Chaque module a son propre fichier de construction, de sorte que chaque projet Android Studio contient 2 types de fichiers de construction Gradle.

  3. Fichier de construction de niveau supérieur: C'est ici que vous trouverez les options de configuration communes à tous les modules qui composent votre projet.

  4. Fichier de construction de niveau module : Chaque module possède son propre fichier de construction Gradle qui contient des paramètres de construction spécifiques au module. Vous passerez le plus clair de votre temps à éditer des fichiers de construction de niveau module plutôt que le fichier de construction de niveau supérieur de votre projet.

Pour voir ces fichiers build.gradle, ouvrez le panneau Projet d'Android Studio (en sélectionnant l'onglet Projet) et développez le dossier Gradle Scripts. Les deux premiers éléments du dossier Gradle Scripts sont les fichiers de construction Gradle au niveau du projet et au niveau du module.

Fichier de compilation de niveau supérieur

Chaque projet Android Studio contient un seul fichier de compilation Gradle de niveau supérieur. Ce fichier build.gradle est le premier élément qui apparaît dans le dossier Gradle Scripts et est clairement marqué Projet.

La plupart du temps, vous n'aurez pas besoin de modifier ce fichier, mais il est toujours utile de comprendre son contenu et le rôle qu'il joue dans votre projet.

Fichiers de construction Gradle au niveau du module

En plus du fichier de construction Gradle au niveau du projet, chaque module possède son propre fichier de construction Gradle. Vous trouverez ci-dessous une version annotée d'un fichier de construction Gradle de base, de niveau module.

D'autres fichiers de Gradle

En plus des fichiers build.gradle, votre dossier Gradle Scripts contient d'autres fichiers Gradle. La plupart du temps, vous n'aurez pas à modifier manuellement ces fichiers, car ils seront automatiquement mis à jour lorsque vous apportez des modifications pertinentes à votre projet. Cependant, c'est une bonne idée de comprendre le rôle que jouent ces fichiers dans votre projet.

gradle-wrapper.properties (version Gradle)

Ce fichier permet à d'autres personnes de créer votre code, même si Gradle n'est pas installé sur leur machine. Ce fichier vérifie si la version correcte de Gradle est installée et télécharge la version nécessaire si nécessaire.

settings.gradle

Ce fichier fait référence à tous les modules qui composent votre projet.

gradle.properties (propriétés du projet)

Ce fichier contient des informations de configuration pour l'ensemble de votre projet. Il est vide par défaut, mais vous pouvez appliquer un large éventail de propriétés à votre projet en les ajoutant à ce fichier.

local.properties (emplacement SDK)

Ce fichier indique au plug-in Android Gradle où il peut trouver votre installation Android SDK.

Remarque: local.properties contient des informations spécifiques à l'installation locale du SDK Android. Cela signifie que vous ne devez pas conserver ce fichier sous le contrôle de la source.

Lecture suggérée - Tutoriel Tutsplus

J'ai eu une compréhension claire de gradle de ceci.


C'est le nouvel outil de construction que Google veut utiliser pour Android. Il est utilisé parce qu'il est plus extensible et utile que la fourmi. Il est destiné à améliorer l'expérience des développeurs.

Vous pouvez voir une conférence de Xavier Ducrohet de l'équipe de développeurs Android sur Google I / O ici.

Il y a aussi un autre exposé sur Android Studio par Xavier et Tor Norbye, également pendant Google I / O ici .


Dans Android Studio, Gradle est un outil de construction personnalisé utilisé pour créer des paquets android (fichiers apk) en gérant les dépendances et en fournissant une logique de construction personnalisée.

Fichier APK (package d'application Android) est un fichier zip spécialement formaté qui contient

  • Code d'octet
  • Ressources (images, interface utilisateur, XML, etc.)
  • Fichier manifeste

Un fichier apk est signé et envoyé à l'appareil via ADB (Android Debug Bridge) où il est exécuté.


1 - Informations de fond de Gradle .

2 - Concepts de Gradle .

3 - La phase d'initialisation.

4 - La phase d'initialisation (suite).

5 - Qu'est-ce que Gradle ?

6 - La phase de configuration.

Voir ce LINK


Gradle est un outil de construction personnalisé et utilisé pour construire APK ou connu sous le nom de kit de paquet d'application.


Gradle est un système de construction . Les systèmes de construction sont des outils logiciels conçus pour automatiser le processus de compilation d'un programme. Les systèmes de construction se présentent sous diverses formes et sont utilisés pour diverses tâches de construction de logiciels. Alors que leur objectif principal est de créer efficacement des exécutables.

Un autre terme apparenté est Construire l'automatisation, qui consiste à automatiser la création d'une construction logicielle et les processus associés, notamment: compiler le code source de l'ordinateur en code binaire, empaqueter le code binaire et exécuter des tests automatisés.

Peu de système de construction similaire pour d'autres langues sont (voir la liste complète here ):

  1. Apache Ant & Apache Maven - Java
  2. sbt (outil de construction simple) - pour Scala (cadre de jeu etc)
  3. AAP - Outil de construction basé sur Python
  4. Rake (Apache Builder) - Rubis
  5. Leiningen pour Clojure

Au risque d'être discursif, je pense que derrière cela se cache la question de savoir pourquoi l'expérience Android Studio / Gradle est si mauvaise.

Expérience typique de Clojure:

  • téléchargez le projet avec les dépendances listées dans project.clj.
  • Leiningen obtient les dépendances grâce à Clojars et Maven.
  • Projet compile.

Expérience Android Studio / Gradle typique:

  • "Importer mon projet Eclipse".
  • OK projet importé.
  • Gradle est en train de faire ça ... attendez ... attendez ... attendez ... Gradle a fini.
  • Compiler ... impossible de compiler car je ne sais pas ce que X est / ne peut pas trouver la bibliothèque Y.

Je ne suis pas sûr que ce soit la faute de Gradle. Mais le "import du projet Eclipse" semble assez floconneux. Pour toute la prétendue sophistication de Gradle et les vertus d'un système de construction, Android Studio ne semble tout simplement pas importer les dépendances de construction ou le processus de construction d'Eclipse.

Il ne vous dit pas quand il n'a pas réussi à importer un graphe de dépendance complet. L'application Android Studio ne fournit aucune aide ou conseil utile sur la façon de résoudre le problème. Il ne vous dit pas où vous pouvez regarder manuellement dans les dossiers Eclipse. Il ne vous dit pas quelle bibliothèque semble manquer. Ou vous aider à rechercher Maven etc pour eux.

En 2016, des choses comme Leiningen / Clojars, ou npm de nœud, ou pip Python, ou l'apkg Debian (et je suis sûr que de nombreux gestionnaires de paquets similaires pour d'autres langages et systèmes) fonctionnent tous magnifiquement ... les dépendances manquantes appartiennent au passé.

Sauf avec Android. Android Studio est maintenant le seul endroit où je ressens encore l'enfer des dépendances manquantes.

Je suis enclin à dire que c'est la faute de Google. Ils ont brisé l'écosystème Android (et des milliers de projets Android / tutoriels en ligne) lorsqu'ils ont décidé cavalièrement de passer d'Eclipse à Android Studio / Gradle sans produire de processus de conversion robuste. Les personnes dont les projets fonctionnent dans Eclipse ne les adaptent pas à AS (sans doute parce que c'est pénible pour eux). Et les gens qui essaient d'utiliser ces projets dans AS rencontrent les mêmes problèmes.

Et de toute façon, si Gradle est ce système de construction super puissant, pourquoi est-ce que je gère encore beaucoup d'autres dépendances dans le gestionnaire de sdk? Pourquoi un projet qui a besoin, disons, du ndk ne peut-il pas le spécifier dans son fichier Gradle pour qu'il soit automatiquement installé et construit en cas de besoin? Pourquoi NDK est-il spécial? De même pour les plates-formes cibles? Pourquoi est-ce que je les installe explicitement dans l'EDI plutôt que de simplement vérifier mon projet contre eux et de faire tout cela trié pour moi dans les coulisses?


Je renvoie deux tutoriel pour écrire la réponse one , two

Gradel est un outil de construction déclaratif à usage général. C'est un objectif général car il peut être utilisé pour construire à peu près tout ce que vous voulez implémenter dans le script de construction. C'est déclaratif puisque vous ne voulez pas voir beaucoup de code dans le fichier de construction, qui n'est pas lisible et moins facile à maintenir. Ainsi, alors que Gradle fournit l'idée de conventions et une construction simple et déclarative, elle rend également l'outil adaptable et les développeurs la possibilité de l'étendre. Il fournit également un moyen facile de personnaliser le comportement par défaut et différents hooks pour ajouter des fonctionnalités tierces.

Gradle combine les bonnes parties des deux outils et fournit des fonctionnalités supplémentaires et utilise Groovy comme un langage spécifique au domaine (DSL). Il a la puissance et la flexibilité de l'outil Ant avec des fonctionnalités Maven telles que le cycle de vie de la construction et la facilité d'utilisation.

Pourquoi Gradle? Pourquoi maintenant?

La réponse de l'outil de construction consiste à ajouter des fonctionnalités de script via des mécanismes d'extension non standard. Vous finissez par mélanger le code de script avec XML ou en invoquant des scripts externes à partir de votre logique de construction. Il est facile d'imaginer que vous devrez ajouter de plus en plus de code personnalisé au fil du temps. En conséquence, vous introduisez inévitablement une complexité accidentelle, et la maintenabilité disparaît de la fenêtre.

Supposons que vous souhaitiez copier un fichier dans un emplacement spécifique lorsque vous créez la version finale de votre projet. Pour identifier la version, vous vérifiez une chaîne dans les métadonnées décrivant votre projet. S'il correspond à un schéma de numérotation spécifique (par exemple, 1.0-RELEASE), vous copiez le fichier du point A au point B. D'un point de vue extérieur, cela peut sembler une tâche triviale. Si vous devez compter sur XML, le langage de construction de nombreux outils traditionnels, exprimer cette logique simple devient assez difficile.

Evolution des outils de construction Java

La logique de construction Java doit être décrite en XML. XML est idéal pour décrire des données hiérarchiques, mais ne correspond pas à l'expression du flux de programme et de la logique conditionnelle. Au fur et à mesure qu'un script de build se complexifie, le maintien du code du bâtiment devient un cauchemar.

Dans Ant , vous faites dépendre la cible JAR de la cible de compilation. Ant ne donne aucune indication sur la façon de structurer votre projet. Bien qu'il permette une flexibilité maximale, Ant rend chaque script de construction unique et difficile à comprendre. Les bibliothèques externes requises par votre projet sont généralement vérifiées dans le contrôle de version, car il n'existe aucun mécanisme automatisé pour les extraire d'un emplacement central.

Maven 1 , sorti en juillet 2004, a tenté de faciliter ce processus. Il a fourni une structure de projet et de répertoire standardisée, ainsi qu'une gestion des dépendances. Malheureusement, la logique personnalisée est difficile à mettre en œuvre

Gradle s'intègre parfaitement dans cette génération d'outils de construction et satisfait de nombreuses exigences des outils de construction modernes (Figure 1). Il fournit un langage DSL expressif, une approche conventionnelle sur la configuration et une gestion puissante des dépendances. Il fait le bon choix d'abandonner XML et d'introduire le langage dynamique Groovy pour définir votre logique de construction. Cela semble convaincant, n'est-ce pas?

Gradle combine les meilleures caractéristiques des autres outils de construction.

Le jeu de caractéristiques convaincant de Gradle

Pourquoi construire vos projets Java avec Gradle Plutôt que Ant ou Maven?

L'outil de construction par défaut pour Android (et la nouvelle étoile des outils de construction sur la JVM) est conçu pour faciliter l'écriture de scripts dans des versions complexes et multilingues. Devriez-vous changer, si vous utilisez Ant ou Maven?

La clé pour débloquer les fonctionnalités de puissance de Gradle dans votre script de construction réside dans la découverte et l'application de son modèle de domaine, comme indiqué dans l'image ci-dessous.

Gradle ne peut pas connaître toutes les exigences spécifiques à votre entreprise. En exposant les crochets dans les phases du cycle de vie, Gradle permet de surveiller et de configurer le comportement d'exécution du script de construction.

Gradle établit un vocabulaire pour son modèle en exposant un langage DSL implémenté dans Groovy. Lorsque vous traitez un domaine de problème complexe, dans ce cas, la tâche de construire un logiciel, être capable d'utiliser un langage commun pour exprimer votre logique peut être un outil puissant.

Un autre exemple est la façon dont vous pouvez exprimer les dépendances aux bibliothèques externes, un problème très commun résolu par les outils de construction. Out-of-the-box Gradle vous fournit deux blocs de configuration pour votre script de construction qui vous permettent de définir les dépendances et les référentiels dont vous voulez les extraire. Si les éléments DSL standard ne correspondent pas à vos besoins, vous pouvez même introduire votre propre vocabulaire grâce au mécanisme d'extension de Gradle.

Intégration avec d'autres outils de construction

Gradle joue bien avec les Ant, Maven et Ivy de ses prédécesseurs, comme le montre l'image ci-dessous.

Automatiser votre projet de la construction au déploiement

En image: étapes d'un pipeline de déploiement.

  • Compiler le code

  • Unité en cours d'exécution et tests d'intégration

  • Effectuer une analyse de code statique et générer une couverture de test

  • Créer la distribution

  • Provisionnement de l'environnement cible

  • Déployer le livrable

  • Exécution de la fumée et tests fonctionnels automatisés

Je renvoie deux tutoriel pour écrire la réponse one , two


DEFINITION :: Gradle peut être décrit comme un mécanisme de construction structuré où il fournit au développeur les outils et la flexibilité pour gérer les ressources d'un projet afin de créer des builds smaller in size , targeting specific requirements pour certains périphériques de certaines configurations

CONFIGURATIONS DE BASE

  1. minimumSdk
  2. maximumSdk
  3. targettedSdk
  4. versionCode
  5. versionName

BIBLIOTHÈQUES :: Nous pouvons ajouter des bibliothèques android ou d'autres bibliothèques tierces en plus selon les exigences faciles qui était une tâche fastidieuse plus tôt. Si la bibliothèque ne correspond pas au projet existant, le développeur reçoit un journal dans lequel la personne peut trouver une solution appropriée pour apporter des modifications au projet afin que la bibliothèque puisse être ajoutée. C'est juste une ligne de dépendance

GÉNÉRATION DE VARIÉTÉS DE CONSTRUCTIONS

Combinaison de types de construction avec des arômes de construction pour obtenir des variances de variances de construction

 ====================                         ====================
|     BuildTypes     |                       |   ProductFlavours  |
 --------------------  ====================== --------------------
|  Debug,Production  |      ||       ||      | Paid,Free,Demo,Mock|
 ====================       ||       ||       ==================== 
                            ||       ||
                            VV       VV
 =================================================================
|           DebugPaid, DebugFree, DebugDemo, DebugMock            |
|  ProductionPaid, ProductionFree, ProductionDemo, ProductionMock |
 =================================================================

RÉDUCTION DE TAILLE

Gradle aide à réduire la taille de la génération générée en supprimant les ressources inutilisées et les objets inutilisés des bibliothèques intégrées

GESTION DES PERMISSIONS

Nous pouvons Spécifier certaines permissions pour certaines versions en ajoutant certaines permissions dans certains scénarios en fonction des besoins

CONSTRUITS POUR CERTAINS APPAREILS

Nous pouvons gérer la génération de génération pour certains périphériques qui incluent certaines densités et certains niveaux d'api. Cela facilite les déploiements de produits dans le magasin d'applications en fonction des besoins de plusieurs types d'appareils

BONNE RÉFÉRENCE

Tutoriels Vogella


Gradle est ce qui permet d'automatiser la construction de projets Android complexes qui impliquent 10s de milliers de lignes de code provenant de multiples sources, projets, bibliothèques, etc .. Il peut conditionnellement générer plusieurs APK optimisés basés sur une pléthore de spécifications de configuration - si vous êtes intéressés, les autres réponses fournissent plus de détails sur cet aspect de Gradle.

Cependant, si vous êtes nouveau sur Android, Gradle dans 99% des cas est ce qui empêche votre projet de se développer. C'est un système impénétrable et complexe qui obscurcit efficacement le processus de construction Android et le rend essentiellement indisponible pour les développeurs inexpérimentés, c'est-à-dire pour construire une application Android simple d'entrée de gamme dont les débutants peuvent avoir besoin d'étudier et de comprendre. tel que:

  • Structure APK et écosystème Android
  • Android Studio
  • Classpaths Java et dépendances
  • Sensationnel
  • Gradle build scripts
  • Beaucoup d'autres technologies complexes et intéressantes

Toutes ces choses sont intéressantes et utiles pour les développeurs Android, mais elles sont loin d'être faciles et présentent un formidable obstacle à l'entrée. Je soupçonne que ce qui a inspiré le PO à poser cette question est le sentiment de frustration qui frappe inévitablement le développeur néophyte après avoir passé trop de temps à essayer d'obtenir une application simple à construire et être continuellement contrarié par Gradle. Le problème est exacerbé de manière perverse par l'énorme quantité de documentation hautement technique disponible pour toutes ces technologies. Aussi pour une grande quantité de besoins de développement Gradle est exagéré.

Une alternative est d'écrire un script shell qui construit votre projet en automatisant les outils disponibles dans le SDK android. Les vertus de cette approche sont nombreuses, pour commencer, c'est probablement la meilleure façon d'étudier et de comprendre le processus de construction et l'écosystème Android, et cela vous permet de contrôler complètement la façon dont votre application est construite. Cependant, cette approche est plus appropriée pour les têtes de technologie profondément irrémédiablement que pour les noobs inexpérimentés qui essaient Android.

Ce qui est remarquable par son absence (s'il vous plaît informez-moi s'il y a une telle chose) est un IDE d'entrée de gamme, léger avec un ensemble de fonctionnalités réduites qui simplifie le processus de construction tout en ne l'obscurcissant pas (netbeans ou eclipse) utiliser Gradle (ce qui n'allait pas avec Ant). Il devrait être facile de générer des fichiers APK conformes à quelques configurations courantes et d'utiliser une structure de projet pouvant évoluer vers un projet Android Studio complet si vous décidez de le faire de cette façon.


HttpClient n'est pas pris en charge dans sdk 23 et 23+.

Si vous devez utiliser dans sdk 23, ajoutez le code ci-dessous à votre Gradle:

android {
    useLibrary 'org.apache.http.legacy'
}

C'est de travailler pour moi. J'espère utile pour vous.







android android-studio gradle android-gradle build-automation