Titanium无法构建或模拟Android应用程序

时间:2013-04-24 17:27:14

标签: android android-emulator titanium titanium-mobile

我刚安装并配置了Titanium Studio及其依赖项来开发我的Android应用程序,但是即使是钛样本应用程序也无法在模拟器中启动。 我可以在浏览器中看到Mobile Web Preview但是当我尝试Android Emulator时,我在控制台中收到以下错误:

[INFO] Force including all modules...
[INFO] Compiling Javascript Resources ...
[INFO] Compiling localization files
[ERROR] error: more than one emulator
[ERROR] Exception occured while building Android project:
[ERROR] Traceback (most recent call last):
[ERROR]   File "C:\Users\Administrator\AppData\Roaming\Titanium\mobilesdk\win32\3.1.0.GA\android\builder.py", line 2528, in <module>
[ERROR]     builder.build_and_run(False, avd_id, debugger_host=debugger_host, profiler_host=profiler_host)
[ERROR]   File "C:\Users\Administrator\AppData\Roaming\Titanium\mobilesdk\win32\3.1.0.GA\android\builder.py", line 2285, in build_and_run
[ERROR]     self.push_deploy_json()
[ERROR]   File "C:\Users\Administrator\AppData\Roaming\Titanium\mobilesdk\win32\3.1.0.GA\android\builder.py", line 1954, in push_deploy_json
[ERROR]     sdcard_available = self.wait_for_sdcard()
[ERROR]   File "C:\Users\Administrator\AppData\Roaming\Titanium\mobilesdk\win32\3.1.0.GA\android\builder.py", line 1907, in wait_for_sdcard
[ERROR]     if 'SDCARD READY' in output:
[ERROR] TypeError: argument of type 'NoneType' is not iterable
[ERROR] :  Build process exited with code 1
[ERROR] :  Project failed to build after 33s 353ms

Android模拟器打开,一切看起来都找不到,但我的应用程序无法构建。

我找到this page并复制了编译命令并手动运行它:

python "c:\Users\Administrator\AppData\Roaming\npm\titanium.CMD" "--no-colors" "--no-prompt" "build" "--platform" "android" "--sdk" "3.1.0.GA" "--log-level" "trace" "--target" "emulator" "--android-sdk" "C:\Users\Administrator\Desktop\adt-bundle-windows-x86_64-20130219\sdk" "--avd-id" "2" "--avd-abi" "armeabi" "--avd-skin" "HVGA" "--skip-js-minify"

但是python给了我这个错误:

File "c:\Users\Administrator\AppData\Roaming\npm\titanium.CMD", line 1
:: Created by npm, please don't edit manually.
^
SyntaxError: invalid syntax

我做错了什么? roblem在哪里?

其他信息:
我在Windows Server 2008 R2上使用最新版本的Titanium Studio(版本:3.1.0.201304151600);
我的系统上安装了node.jsnpmnode.acspython,环境变量正确且正常; 我有适用于android-2.2android-17版本的Android SDK。

3 个答案:

答案 0 :(得分:3)

经过几个小时的搜索,在没有答案的情况下寻找太多类似的问题,我自己解决了这个问题 对于在Titanium Studio中以[ERROR] error: more than one emulator开头的错误的每个人,问题可能是由于以下原因之一:

  • 您的Android设备已连接到计算机
  • 您有一个Android模拟器应用程序,例如 BlueStacks

我的错误是因为BlueStacks在后台运行。

答案 1 :(得分:2)

答案1:

似乎构建工具已移至使用最新Android SDK更新的另一个目录。在/ Applications / Android-sdk / platform-tools中创建了aapt和dx的符号链接:

ln -s /Applications/Android-sdk/build-tools/17.0.0/aapt aapt ln -s /Applications/Android-sdk/build-tools/17.0.0/dx dx

这解决了它(在他们的Python代码中进行了一些挖掘之后)。

答案2:

我在Windows上,所以我使用了mklink。我必须添加一个lib / dx.jar链接才能工作。我在dit首先将文件夹'lib'添加到platform-tools文件夹中,然后在命令行中添加:

cd %YOUR_ANDROID_DIR%\platform-tools    
mklink aapt.exe ..\build-tools\android-4.2.2\aapt.exe
mklink dx.bat ..\build-tools\android-4.2.2\dx.bat      
cd lib                              
mklink dx.bat ..\..\build-tools\android-4.2.2\lib\dx.jar

答案3:

我复制了以下文件:

C:\Android\build-tools\17.0.0\aapt.exe to C:\Android\platform-tools\aapt.exe
C:\Android\build-tools\17.0.0\dx.bat  to  C:\Android\platform-tools\dx.bat
C:\Android\build-tools\17.0.0\lib  to  C:\Android\platform-tools\lib

然后我清理了项目并重建,现在一切正常。

来源:http://developer.appcelerator.com/question/152497/titanium-sdk-310-error-typeerror-argument-of-type-nonetype-is-not-iterable-on-building-android-app#comment-175782

答案 2 :(得分:1)

虽然它应该是一个评论,但想到回答它。

  1. 您是否删除了构建文件夹并尝试重新部署。
  2. 尝试在以前版本的钛sdk中编译?如果你尝试过,你得到了同样的错误。
  3. 如果这些不起作用,请尝试...

    1. 尝试从android sdk安装平台工具。
    2. 还要在命令行中检查JDK版本,有时这可能是疯狂的,因为您的环境变量可能指向完全不同的JDK路径,而您可能没有使用Titanium。