我下载了最新版本的Android for Linux(android-sdk_r05-linux_86.tgz)。我试图使用Android Ant任务来打包,构建和部署我的代码。我应该提一下,我正在运行AMD64,但我安装了32位库。 Android Ant任务都已破坏。
首先,启动模拟器任务永远不会让模拟器运行。它确实超过了adb,但它只是坐在那里。
其次,SDK缺少tools目录中的AAPT二进制文件。因此,示例记事本示例应用程序甚至无法正确打包。
java.lang.IllegalStateException:在/ home / user / bin / android-sdk-linux_86中无法找到sdk内的aapt 在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进行交互。啊。
答案 0 :(得分:30)
对于最近遇到此事的人来说,aapt再次感动。它现在在$ ANDROID_SDK / build-tools / 17.0.0。
答案 1 :(得分:7)
我已经使用Android Ant构建脚本编写了三本书。相信我,他们工作。
首先,启动模拟器任务永远不会 让模拟器运行。它确实得到了 过去开始adb,但随后就坐了 那里。
运行android
命令并从出现的AVD Manager窗口启动模拟器。 AFAIK,Ant中没有start-emulator
任务 - 事实上,我不知道曾经有过这个任务。
其次,SDK缺少aapt 工具目录中的二进制文件。
如果您正在查看$ANDROID_HOME/tools/
(其中$ANDROID_HOME
是解压缩SDK的地方),那么您不应该在那里找到它。该目录适用于直接支持所有API级别的工具。特定于API级别的工具(例如aapt
)将驻留在$ANDROID_HOME/platforms/$SDK/tools/
中(其中$SDK
是某些Android版本的名称,例如android-2.1
)。
如果$ANDROID_HOME/platforms/
中没有任何内容,请按照installation instructions的第4步进行操作。