Что случилось с Android AAPT? - PullRequest
13 голосов
/ 16 марта 2010

Я скачал самую последнюю версию Android для Linux (android-sdk_r05-linux_86.tgz). Я пытался использовать задачи Android Ant для упаковки, сборки и развертывания своего кода. Я должен упомянуть, что я использую AMD64, но у меня установлены 32-битные библиотеки. Задачи Android Ant все не работают.

Во-первых, задача start-emulator никогда не запускает эмулятор. Он проходит мимо запуска adb, но потом просто сидит там.

Во-вторых, в SDK отсутствует двоичный файл AAPT в каталоге инструментов. Таким образом, пример приложения-блокнота даже не будет правильно упакован.

java.lang.IllegalStateException: не удается найти aapt внутри sdk
в / home / user / bin / android-sdk-linux_86
на com.googlecode.autoandroid.lib.AndroidTools.locateTool (AndroidTools.java:116)
на com.googlecode.autoandroid.lib.AndroidTools.startTool (AndroidTools.java:103)
на com.googlecode.autoandroid.lib.AndroidTools.startTool (AndroidTools.java:91)
на com.googlecode.autoandroid.lib.UnixAndroidTools.aapt (UnixAndroidTools.java:9)

У меня все зависимости настроены для Android. Я могу просто запустить его из командной строки.

Я предполагаю, что код Ant не синхронизирован с последними обновлениями SDK. Кто-нибудь может пролить свет на эту проблему? На данный момент я рассматриваю возможность написания своих собственных скриптов Python для взаимодействия с Android SDK. Тьфу.

Ответы [ 2 ]

30 голосов
/ 06 июня 2013

Для тех, кто столкнулся с этим недавно, aapt переехал снова. Теперь он находится в $ ANDROID_SDK / build-tools / 17.0.0.

7 голосов
/ 16 марта 2010

Я написал три книги, используя скрипты сборки Android Ant. Поверь мне, они работают.

Во-первых, задача запуска эмулятора никогда запускает эмулятор Это действительно прошёл стартовый адб, но потом просто сидит есть.

Запустите команду android и запустите эмулятор из появившегося окна AVD Manager. AFAIK, в Ant нет задачи start-emulator - на самом деле, я не знаю, была ли она когда-либо.

Во-вторых, в SDK отсутствует программа двоичный файл в каталоге инструментов.

Если вы заглядываете в $ANDROID_HOME/tools/ (где $ANDROID_HOME - это место, где вы распаковали SDK), вы не должны искать там. Этот каталог предназначен для инструментов, которые напрямую поддерживают все уровни API. Инструменты уровня API, такие как aapt, будут находиться в $ANDROID_HOME/platforms/$SDK/tools/ (где $SDK - это название некоторой версии Android, например android-2.1).

Если у вас ничего нет в $ANDROID_HOME/platforms/, выполните шаг 4 инструкции по установке .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...