Android gradle: buildtoolsVersion vs compileSdkVersion


Відповіді:


199

compileSdkVersion це версія API Android, проти якої ви компілюєте.

buildToolsVersionце версія компіляторів (aapt, dx, компілятор renderscript тощо), яку ви хочете використовувати. Для кожного рівня API (починаючи з 18) існує відповідна версія .0.0.

На IO 2014 ми випускаємо API 20 та збираємо інструменти 20.0.0, щоб разом із ним.

Між релізами Android ми випустимо оновлення компіляторів, і тому ми випустимо версії .0.1, .0.2 і т. Д. ... Оскільки ми не хочемо мовчки оновлювати цю версію під вами, вам належить перейти до нова версія, коли вам зручно.

Ви можете використовувати більш високу версію інструментів збирання, ніж ваш compileSdkVersion, щоб забрати новий / кращий компілятор, не змінюючи те, на чому ви будуєте додаток.


10
Чи можна використовувати більш високу buildToolsVersion на нижчій компіляціїSdkVersion, скажімо, 20.0.0 buildToolsVersion на 18.0.0 compileSdkVersion?
Glide

5
@Glide так, інструменти побудови підтримуватимуть старіші версії.
Ксав'є Дюкрохет

1
@XavierDucrohet Чи потрібно вказати buildToolsVersion? Я пам’ятаю, що десь читав, що остання версія інструментів збирання вибирається автоматично. Я спробував видалити buildToolsVersion, але Android Studio цим не задоволений.
Hong

11
Хтось із посиланням зробить документ про те, що насправді відбувається за лаштунками за допомогою compileSdkVersion, buildToolsVersion, minSdkVersion і targetSdkVersion? Мені подобається правильно розуміти це.
порошок366

2
@ powder366 Дивіться цей цінний пост від Ian Lake: - medium.com/google-developers/…
maveroid

46

Оновлення Android Studio 3.0

Це вже не так важливо знати точну, buildToolsVersionяк це було раніше, тому що тепер вона вибирається автоматично.

Документація каже:

Вам більше не потрібно вказувати версію інструментів збирання (так що тепер ви можете видалити android.buildToolsVersionвластивість). За замовчуванням плагін автоматично використовує мінімально необхідну версію інструментів побудови для версії Android плагіна, який ви використовуєте.

Пошук точного номера версії

Я спочатку приїжджав сюди, шукаючи, як дізнатися точний номер найсвіжішої версії інструментів побудови (ще в ті часи, коли це потрібно було оновити вручну). Якщо вам все-таки потрібно це зробити, ви можете знайти його наступним чином:

Перейдіть до Інструменти> Менеджер SDK> Інструменти SDK (вкладка) . Виберіть у списку інструменти побудови Android SDK та поставте прапорець Показувати деталі пакета . В останньому пункті буде показана остання версія.

введіть тут опис зображення

На зображенні вище я бачу, що я buildToolsVersion 27.0.3встановив. Є більш нова rcверсія (кандидат на випуск), але я не встановив її. Буду, коли вийде стабільна версія.


Щоб було зрозуміло, в AS 3.2 шлях до вищезазначеного - "Файл => Налаштування => Зовнішній вигляд і поведінка ...."
JL_SO
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.