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 , это не проблема, и приложение было построено и запущено правильно. возможно, это поможет, у кого такая же проблема.