Android Aidl ошибка SDK инструменты для сборки 29.0.0

Я обновил свое приложение для Android, чтобы начать использовать SDK 29 и инструменты сборки 29.0.0. При компиляции в Android Studio я получаю сообщение об ошибке:

Процесс 'команда'C:\Users\ma_fo\AppData\Local\Android\Sdk\build-tools\29.0.0\aidl.exe'' завершен с ненулевым значением выхода -1073741819

Фактическая команда, выполняемая для aidl: C: \ Users \ ma_fo \ AppData \ Local \ Android \ Sdk \ build-tools \ 29.0.0 \ aidl.exe с аргументами { -pC:\Users\ma_fo\AppData\Local\Android\Sdk\platform \android-29\framework.aidl -oE:\Work\McDevelopment\android-sales-app-webview\app\build\generate \aidl_source_output_dir\debug\compileDebugAidl\out -IE:\Work\McDevelopment\android-sales-app-webview\app\src\main\aidl -IE:\Work\McDevelopment\android-sales-app-webview\app\src\debug\aidl -IC:\Users\ma_fo.gradle\caches\transforms-2\files-2.1\c21a47fa6bee4a2c237691438c7b1f92\aidl -IC:\Users\ma_fo.gradle\caches\transforms-2\files-2.1\87cbfb92509988fa6d22255a681cc703\aidl -IC:\Users\ma_fo.graforms \ 2_resources \ caches 2.1\4cdb3bb0ddd100ba4f9a12ec5a9fae60\aidl -dC:\Users\ma_fo\AppData\Local\Temp\aidl367254395093906008.d E:\Work\McDevelopment\android-sales-app-webview\app\src\main\aidl\com\ биллинг \IInAppBillingService.aidl}

Когда я запускаю эту команду вручную в командной строке MS-DOS с помощью build-tools 28.0.3, компиляция проходит без ошибок.

Когда я запускаю эту команду с помощью инструментов сборки 29.0.0, я получаю сообщение об ошибке:aidl E 06-08 18:07:03 4920 13216 io_delegate.cpp: 141] Ошибка при создании E: \ Work \ McDevelopment \ android-sales -app-webview \ app \ build \ generate \aidl_source_output_dir\debug\compileDebugAidl\out\E:: Неверный аргумент

Я ожидаю, что ручная компиляция idl будет работать для обеих версий. Есть ли проблема с помощью в инструментах сборки 29.0.0? Или есть что-то еще, что я должен обновить?

5 ответов

В моем случае файл *.d в параметре -d содержит ошибку в первой строке.

Из инструментов сборки 28.0.3:

C:\[PROJECT-PATH]\app\build\generated\aidl_source_output_dir\debug\compileDebugAidl\out\com\android\vending\billing\IInAppBillingService.java : \

Из инструментов сборки 29.0.0

C:\[PROJECT-PATH]\app\build\generated\aidl_source_output_dir\debug\compileDebugAidl\out\C:\[PROJECT-PATH]\app\src\main\aidl\com\android\vending\billing\IInAppBillingService.java : \

Но у меня нет решения. Я думаю, что это ошибка в инструментах сборки 29.0.0.

Обновление: инструменты сборки версии 29.0.1 решили эту проблему.

Это известная проблема, которая предположительно была исправлена, но это не так: https://issuetracker.google.com/issues/132344897

Если вы получили ошибку после обновления (как и я), то решение будет понижено. Я понизил с 29.0.0 до 28.0.3, и это работает для меня:

C:\>"c:\Users\Plinio\AppData\Local\Android\Sdk\tools\bin\sdkmanager" --list --verbose

. . .

Installed packages:=====================] 100% Computing updates...
--------------------------------------
build-tools;29.0.0
    Description:        Android SDK Build-Tools 29
    Version:            29.0.0
    Installed Location: c:\Users\Plinio\AppData\Local\Android\Sdk\build-tools\29.0.0

. . .

Available Packages:
--------------------------------------

. . .

build-tools;28.0.1
    Description:        Android SDK Build-Tools 28.0.1
    Version:            28.0.1

build-tools;28.0.2
    Description:        Android SDK Build-Tools 28.0.2
    Version:            28.0.2

build-tools;28.0.3
    Description:        Android SDK Build-Tools 28.0.3
    Version:            28.0.3

build-tools;29.0.0
    Description:        Android SDK Build-Tools 29
    Version:            29.0.0

. . .

C:\>"c:\Users\Plinio\AppData\Local\Android\Sdk\tools\bin\sdkmanager" build-tools;28.0.3
C:\>"c:\Users\Plinio\AppData\Local\Android\Sdk\tools\bin\sdkmanager" --uninstall build-tools;29.0.0

Прежде чем понизить версию, я попытался проверить эту проблему. Если вы заметили, есть "E:" в конце пути. Это выглядит как ошибка aidl.exe, если нет выходного файла, назначенного в качестве второго параметра.

aidl.exe [OPTION]... INPUT [OUTPUT]

Проверьте ваше сообщение об ошибке (как мое):

aidl E 06-08 18:07:03 4920 13216 io_delegate.cpp:141] Error while creating E:\Work\McDevelopment\android-sales-app-webview\app\build\generated\aidl_source_output_dir\debug\compileDebugAidl\out\E:: Invalid argument

Моя решена.

Удалите все файлы в этой папке:

C:\Users<имя пользователя>\AppData\Local\Android\Sdk\build-tools

VSCode или Android-студия автоматически восстановят файлы на вашем локальном компьютере во время предварительной компиляции.

Я столкнулся с той же проблемой, но использовал версию buildTools 33.0.0 , после того как я изменил ее на версию 33.0.1 , это не проблема, и приложение было построено и запущено правильно. возможно, это поможет, у кого такая же проблема.

Другие вопросы по тегам