Qu'est-ce que le SDK construire Android-outils, plate-forme-Outils et outils? Et quelle version doit être utilisé?

je sais que c'est une question très rudimentaire, mais à ma surprise, je n'ai pas pu trouver de document sur les outils de construction SDK Android. Outre les outils SDK Android et plate-forme SDK Android-Outils, Il ya un tas D'Android SDK construire-outils comme indiqué dans la capture d'écran en annexe. Est-ce que quelqu'un pourrait pointer vers une source expliquant chacun d'entre eux et aider à clarifier comment une certaine version D'Android SDK construire-outils est choisi pour l'utilisation?

enter image description here

Édité (2014-02-27) :

Je ne comprends toujours pas tous les outils. Ce qui suit est ma compréhension limitée basée sur les derniers documents de Google:

  • Android SDK Build-tools utilisé pour être des composants de Android SDK Platform-tools . Ils ont été découplés des outils de la plate-forme SDK Android, de sorte que les outils de construction peuvent être mis à jour indépendamment de les composantes de l'environnement de développement intégré (IDE).
  • plateforme SDK Android-tools sont personnalisés pour prendre en charge les fonctionnalités de la dernière plateforme Android. Ils sont rétro-compatibles de sorte que vous utilisez toujours la dernière mise à jour de plate-forme SDK Android-outils même votre application cible les anciennes plates-formes Android.
  • SDK tools sont indépendant de la plateforme et sont requis n'importe sur quelle plateforme Android vous développez.

Je ne comprends toujours pas la raison d'être de prendre Android SDK Build-tools sur Android SDK Platform-tools qui a une seule instance et est facile à gérer la mise à jour. La seule raison possible à laquelle je peux penser est que certaines applications doivent compter sur des composants de construction plus anciens pour les construire. Google document mentionne cela, mais n'explique pas pourquoi. En regardant les notes de publication, vous noterez que les mises à jour de Android SDK Build-tools sont principalement pour corriger des bogues ou/ajouter le soutien pour les nouvelles plates-formes. La seule raison pour laquelle je peux penser à certaines applications pour utiliser des versions plus anciennes de Android SDK Build-tools est qu'ils s'appuient sur certains bogues de Android SDK Build-tools . Ces applications ne fonctionneraient pas normalement sans être construites avec ces bogues. J'aimerais que Google puisse mieux expliquer cela par donner un ou deux exemples montrant pourquoi ces bugs dans les outils sont essentiels pour certaines applications.

302
demandé sur Flow 2013-11-11 20:57:48

6 réponses

A propos de la version de Android SDK Build-tools , la réponse est

par défaut, le SDK Android utilise la version téléchargée la plus récente de les outils de construction.

Source

dans Eclipse, vous pouvez choisir une version spécifique en utilisant la propriété sdk.buildtools dans le fichier project.properties .

il semble pas page officielle expliquant tous les outils de construction. Voici ce que dit L'équipe androïde à ce sujet.

les outils [de construction], tels que aidl, aapt, dexdump, et dx, sont typiquement appelé par les outils de construction Android ou développement Android Outils (ADT), de sorte que vous avez rarement besoin d'invoquer ces outils directement. En tant que règle générale, vous devez compter sur les outils de construction ou le plugin ADT pour appelez-la si nécessaire.

Source

quoi qu'il en soit, voici une synthèse des différences entre les outils, plate-forme-Outils et construire-outils:

  • Android SDK Tools
    • Emplacement: $ANDROID_HOME/tools
    • outils Principaux: des scripts ant (pour construire votre Apk) et ddms (pour le débogage)
  • plateforme SDK Android-tools
    • Emplacement: $ANDROID_HOME/platform-tools
    • outil principal: adb (pour gérer l'état d'un émulateur ou d'un appareil Android)
  • version du SDK Android-outils
    • Emplacement: $ANDROID_HOME/build-tools/$VERSION/
    • Documentation
    • principaux outils: aapt (pour générer R.java and unaligned, unsigned APKs), dx (pour convertir Java bytecode en Dalvik bytecode), et zipalign (pour optimiser vos APKs)
83
répondu lacton 2015-08-19 09:37:12

Android SDK construire des outils sont utilisés pour déboguer, construire, exécuter et tester une application Android.

Android Build Tools peut être utilisé pour développer et travailler à partir de ligne de commande ou IDE (I. e Eclipse ou Android Studio).

est également utilisé pour connecter les appareils Android et les racine.(fastboot, adb et plus..)

Toujours utiliser la dernière.(Recommandé)

plus d'informations sur les outils et commandes de construction Android

38
répondu mipreamble 2015-04-19 02:02:10

je laisse à d'autres le soin de discuter de la différence entre les outils de construction, les outils de plate-forme et les outils. D'un point de vue pratique, il vous suffit de connaître la réponse à votre deuxième question:

quelle version utiliser?

réponse: Utilisez la version la plus récente.

pour ceux qui utilisent Android Studio avec Gradle, le buildToolsVersion doit être défini dans le fichier build.gradle (Module: app).

android {
    compileSdkVersion 25
    buildToolsVersion "25.0.2"

    ...
}

Où puis-je obtenir la version la plus récente du nombre D'outils de construction?

ouvrez le gestionnaire de SDK Android.

  • Dans Android Studio, allez à Outils > Android > SDK Manager > l'Apparence Et le Comportement > Paramètres du Système > Android SDK
  • choisir la SDK Tools tab.
  • sélectionner outils de construction SDK Android dans la liste
  • Vérifier Afficher Les Détails Du Package .

le dernier élément affichera la version la plus récente.

enter image description here

assurez-vous qu'il est installé et ensuite écrire ce nombre comme le buildToolsVersion dans build.gradle (Module: app).

14
répondu Suragch 2016-12-17 00:50:23

vous pouvez trouver des détails sur ces Android - Outils En Ligne de commande


tl; dr:

Outils du kit SDK:

  1. Android SDK Manager (sdkmanager)
  2. AVD Manager (avdmanager)
  3. Dalvik Debug Monitor Server (ddms)

Outils De Construction:

  1. signataire
  2. proGuard
  3. zipalign
  4. jobb

Outils De Plate-Forme:

  1. bad
  2. aidl, aapt, dexdump, et dx
  3. bmgr
  4. logcat
10
répondu Suhaib 2017-03-04 07:41:57

la bonne réponse est

a découplé les composants spécifiques à la construction du SDK Android de la composante plate-forme-Outils, de sorte que les outils de construction peuvent être mis à jour indépendamment des composants de L'environnement de développement intégré (IDE).

lien (extension de Révision 17)

9
répondu kreker 2014-01-11 00:08:31

outils de construction SDK Android sont exactement ce que le nom dit qu'ils sont; Outils pour la construction D'Applications Android.Il est très important d'utiliser la dernière version de build tools (sélectionnée automatiquement par votre IDE via le SDK Android), mais la raison pour laquelle les anciennes versions sont laissées là est de prendre en charge la rétrocompatibilité, c'est-à-dire si vos projets dépendent de versions plus anciennes des outils de construction.

2
répondu ojonugwa ochalifu 2015-05-21 07:41:28