如何使用旧 SDK(< 6.0.0.GA)编译 Titanium 项目?
How can I compile a Titanium project using an old SDK (< 6.0.0.GA)?
我目前有 2 个 Titanium 项目。一个使用最新的 SDK (6.0.4.GA),另一个使用旧的 (5.2.2.GA)。当我构建第一个时,一切正常。我可以生成 APK,将其安装在 Genymotion 上,分发它等等。问题是:当我尝试构建第二个(使用 SDK 5.2.2.GA 的那个)时,CLI 无法识别安装的 SDK。两个项目都针对 Android SDK API 23. 有什么想法可以编译旧的吗?由于 SDK 版本 6 删除了 Ti.include(),因此无法升级 SDK 版本。
我正在运行执行以下命令
appc ti build -p android -b
这是输出
Appcelerator Command-Line Interface, version 6.2.0
Copyright (c) 2014-2017, Appcelerator, Inc. All Rights Reserved.
2017-05-08 15:08:14
Operating System
Name = Mac OS X
Version = 10.12.4
Architecture = 64bit
# CPUs = 4
Memory = 8589934592
Node.js
Node.js Version = 4.6.0
npm Version = 2.15.9
Titanium CLI
CLI Version = 5.0.12
Titanium SDK
SDK Version = 5.2.2.GA
SDK Path = /Users/inovacao/Library/Application Support/Titanium/mobilesdk/osx/5.2.2.GA
Target Platform = android
Command
/usr/local/bin/node /Users/inovacao/.appcelerator/install/6.2.0/package/node_modules/titanium/lib/titanium.js build -p android -b --config-file /var/folders/63/7nt43kd11p3f3dg463vfd3rrrcyq8h/T/build-1494266892279.json --log-level info --no-banner --project-dir /Users/inovacao/Documents/eMob/emob-transformation
[ERROR] Target Android SDK API 23 is not installed
如果我 运行 appc ti sdk select 6.0.4.GA
然后 appc ti info
,我得到以下关于 Android 的信息:
Android SDK
Android Executable = not found
ADB Executable = /Users/inovacao/Library/Android/sdk/platform-tools/adb
SDK Path = /Users/inovacao/Library/Android/sdk
Android NDK
NDK Path = /Users/inovacao/Library/Android/android-ndk-r9d
NDK Version = r9d (64-bit)
Android Platforms
1) android-23
Name = Android 6.0
API Level = 23
Revision = 3
Skins = HVGA, QVGA, WQVGA400, WQVGA432, WSVGA, WVGA800, WVGA854, WXGA720, WXGA800, WXGA800-7in
ABIs =
Path = /Users/inovacao/Library/Android/sdk/platforms/android-23
2) android-25
Name = Android 7.1.1
API Level = 25
Revision = 2
Skins = HVGA, QVGA, WQVGA400, WQVGA432, WSVGA, WVGA800, WVGA854, WXGA720, WXGA800, WXGA800-7in
ABIs =
Path = /Users/inovacao/Library/Android/sdk/platforms/android-25
Android Add-Ons
None
Android Emulators
None
但是,当我 运行 appc ti sdk select 5.2.2.GA
然后 appc ti info
,我得到这个结果:
Android SDK
Android Executable = /Users/inovacao/Library/Android/sdk/tools/android
ADB Executable = /Users/inovacao/Library/Android/sdk/platform-tools/adb
SDK Path = /Users/inovacao/Library/Android/sdk
Android NDK
NDK Path = /Users/inovacao/Library/Android/android-ndk-r9d
NDK Version = r9d (64-bit)
Android Platforms
None
Android Add-Ons
None
Android Emulators
None
[编辑 1] 我尝试使用以下内容:
appc 客户端:appc use latest
、appc use 5.2.2
节点:n 4.6.0
、n 4.4.4
、n 4.2.0
、n 4.0.0
Android NKD:r14b、r10e、r9d
Android 构建工具:25.0.3、23.0.1
仍然,运气不好
我认为你必须为你的5.2.2.GA项目安装一个appc本地环境,并使用全局安装appc到6.0.4.GA项目以避免冲突。
所以,经过一整天的折腾,我终于想通了。 Android SDK 工具版本与 Titanium SDK 5.2 不兼容。2.GA。我从 this site 下载了 Android SDK V23.0.2,获取了工具文件夹并替换了我的 Android SDK 主页 ~/Library/Android/sdk
文件夹中的现有工具。
现在,该网站没有给你 platform-tools 文件夹,所以结果有点像弗兰肯斯坦,有一个版本的工具,另一个版本的平台工具和第三个版本的构建工具.
我目前有 2 个 Titanium 项目。一个使用最新的 SDK (6.0.4.GA),另一个使用旧的 (5.2.2.GA)。当我构建第一个时,一切正常。我可以生成 APK,将其安装在 Genymotion 上,分发它等等。问题是:当我尝试构建第二个(使用 SDK 5.2.2.GA 的那个)时,CLI 无法识别安装的 SDK。两个项目都针对 Android SDK API 23. 有什么想法可以编译旧的吗?由于 SDK 版本 6 删除了 Ti.include(),因此无法升级 SDK 版本。
我正在运行执行以下命令
appc ti build -p android -b
这是输出
Appcelerator Command-Line Interface, version 6.2.0
Copyright (c) 2014-2017, Appcelerator, Inc. All Rights Reserved.
2017-05-08 15:08:14
Operating System
Name = Mac OS X
Version = 10.12.4
Architecture = 64bit
# CPUs = 4
Memory = 8589934592
Node.js
Node.js Version = 4.6.0
npm Version = 2.15.9
Titanium CLI
CLI Version = 5.0.12
Titanium SDK
SDK Version = 5.2.2.GA
SDK Path = /Users/inovacao/Library/Application Support/Titanium/mobilesdk/osx/5.2.2.GA
Target Platform = android
Command
/usr/local/bin/node /Users/inovacao/.appcelerator/install/6.2.0/package/node_modules/titanium/lib/titanium.js build -p android -b --config-file /var/folders/63/7nt43kd11p3f3dg463vfd3rrrcyq8h/T/build-1494266892279.json --log-level info --no-banner --project-dir /Users/inovacao/Documents/eMob/emob-transformation
[ERROR] Target Android SDK API 23 is not installed
如果我 运行 appc ti sdk select 6.0.4.GA
然后 appc ti info
,我得到以下关于 Android 的信息:
Android SDK
Android Executable = not found
ADB Executable = /Users/inovacao/Library/Android/sdk/platform-tools/adb
SDK Path = /Users/inovacao/Library/Android/sdk
Android NDK
NDK Path = /Users/inovacao/Library/Android/android-ndk-r9d
NDK Version = r9d (64-bit)
Android Platforms
1) android-23
Name = Android 6.0
API Level = 23
Revision = 3
Skins = HVGA, QVGA, WQVGA400, WQVGA432, WSVGA, WVGA800, WVGA854, WXGA720, WXGA800, WXGA800-7in
ABIs =
Path = /Users/inovacao/Library/Android/sdk/platforms/android-23
2) android-25
Name = Android 7.1.1
API Level = 25
Revision = 2
Skins = HVGA, QVGA, WQVGA400, WQVGA432, WSVGA, WVGA800, WVGA854, WXGA720, WXGA800, WXGA800-7in
ABIs =
Path = /Users/inovacao/Library/Android/sdk/platforms/android-25
Android Add-Ons
None
Android Emulators
None
但是,当我 运行 appc ti sdk select 5.2.2.GA
然后 appc ti info
,我得到这个结果:
Android SDK
Android Executable = /Users/inovacao/Library/Android/sdk/tools/android
ADB Executable = /Users/inovacao/Library/Android/sdk/platform-tools/adb
SDK Path = /Users/inovacao/Library/Android/sdk
Android NDK
NDK Path = /Users/inovacao/Library/Android/android-ndk-r9d
NDK Version = r9d (64-bit)
Android Platforms
None
Android Add-Ons
None
Android Emulators
None
[编辑 1] 我尝试使用以下内容:
appc 客户端:appc use latest
、appc use 5.2.2
节点:n 4.6.0
、n 4.4.4
、n 4.2.0
、n 4.0.0
Android NKD:r14b、r10e、r9d
Android 构建工具:25.0.3、23.0.1
仍然,运气不好
我认为你必须为你的5.2.2.GA项目安装一个appc本地环境,并使用全局安装appc到6.0.4.GA项目以避免冲突。
所以,经过一整天的折腾,我终于想通了。 Android SDK 工具版本与 Titanium SDK 5.2 不兼容。2.GA。我从 this site 下载了 Android SDK V23.0.2,获取了工具文件夹并替换了我的 Android SDK 主页 ~/Library/Android/sdk
文件夹中的现有工具。
现在,该网站没有给你 platform-tools 文件夹,所以结果有点像弗兰肯斯坦,有一个版本的工具,另一个版本的平台工具和第三个版本的构建工具.