当我尝试运行Android应用程序时,我已经安装了新的appcelerator工作室和钛CLI以及其他依赖项,然后它显示以下错误:
[INFO] : Packaging application: ../sw/android-sdk-macosx/build-tools/24.0.2/aapt "package" "-f" "-m" "-J" "WorkData/Appcelator Projects/test/build/android/gen" "-M" "../Appcelator Projects/test/build/android/AndroidManifest.xml" "-A" "../WorkData/Appcelator Projects/test/build/android/bin/assets" "-S" "../WorkData/Appcelator Projects/test/build/android/res" "-I" "../sw/android-sdk-macosx/platforms/android-23/android.jar" "-F" "../WorkData/Appcelator Projects/test/build/android/bin/app.ap_" "--auto-add-overlay" "--extra-packages" "ti.modules.titanium.ui:android.support.v7.appcompat:android.support.v7.cardview" "-S" "/var/folders/jf/f17wzygx4nbd6fg5wsntf4840000gn/T/116820-1742-1nuy1sx.xxrqp30udi/res" "-S" "/var/folders/jf/f17wzygx4nbd6fg5wsntf4840000gn/T/116820-1742-hop1bc.t53b359udi/res" "-S" "/var/folders/jf/f17wzygx4nbd6fg5wsntf4840000gn/T/116820-1742-6n4mu0.4svn3o9a4i/res"
2016-09-20T06:14:33.921Z | ERROR | An uncaught exception was thrown!
Path must be a string. Received undefined
2016-09-20T06:14:33.922Z | ERROR | Path must be a string. Received undefined
我也可以在iPhone上运行相同的项目。
我的机器配置如下:
Operating System
Name = Mac OS X
Version = 10.11.6
Architecture = 64bit
# CPUs = 4
Memory = 8589934592
Node.js
Node.js Version = 6.5.0
npm Version = 3.10.3
Titanium CLI
CLI Version = 5.0.9
Titanium SDK
SDK Version = 5.5.0.GA
SDK Path = /Users/neosoft/Library/Application Support/Titanium/mobilesdk/osx/5.5.0.GA
Target Platform = android
Command
任何人都可以帮我解决问题......
答案 0 :(得分:3)
您似乎正在使用Build Tools SDK 24.#。 Appcelerator尚不支持此功能。您应该卸载此版本并安装23(appcelerator支持的最新版本)。
我建议不时观看Compatibility Matrix。
然后在Tiapp.xml中选择minSDK
和targetSDK
,如下所示:
<android xmlns:android="http://schemas.android.com/apk/res/android">
<manifest android:versionCode="1"
android:versionName="1.0.0" package="app.my" xmlns:android="http://schemas.android.com/apk/res/android">
<uses-sdk android:minSdkVersion="16" targetSdkVersion="23"/>
</manifest>
</android>
答案 1 :(得分:2)
请参阅我的Android SDK文件夹,如下所示:
尝试查看您的Android SDK文件夹并检查是否存在与版本24相关的任何内容。并在删除与24版本相关的所有内容后执行这些任务:
答案 2 :(得分:2)
使用以下命令检查您的node.js版本:
node -v
如果您的版本高于4.4.2,那就是问题所在。您可以使用以下方法修复它:
sudo npm cache clean -f
sudo npm install -g n
sudo n 4.4.2
答案 3 :(得分:0)
我遇到了同样的问题,并在将节点版本更改为4.4.2后得到了解决。如果这可以帮助任何人,只需在此更新。