[ALOY-905] Make 1.3.0 compatible with TiSDK < 3.2.0
GitHub Issue | n/a |
---|---|
Type | Improvement |
Priority | High |
Status | Closed |
Resolution | Fixed |
Resolution Date | 2013-12-19T21:11:36.000+0000 |
Affected Version/s | Alloy 1.3.0 |
Fix Version/s | Alloy 1.3.1, 2013 Sprint 26 |
Components | Titanium SDK |
Labels | n/a |
Reporter | Tony Lukasavage |
Assignee | Tony Lukasavage |
Created | 2013-12-19T02:47:53.000+0000 |
Updated | 2013-12-23T15:54:36.000+0000 |
Description
ALOY-760, which is needed to support Liveview multi-platform builds, required a TIMOB bug fix which affected iOS device builds, documented in TIMOB-14884. The resolution caused Alloy to compile its projects to platform-specific folders, and would hence only support TiSDK 3.2.0 or greater, since iOS device builds would fail without the TIMOB-14884 fix.
This ticket is here to see if the issue in TIMOB-14884 can be worked around without absolutely requiring TiSDK 3.2.0. The goal is for Alloy 1.0+ to continue to support TiSDK 3.0.0+.
A likely fix would be to simply, in the case of non-development iOS builds, to generate files to both the platform-specific and plain-old Resources folder. It's redundant and could potentially increase compile time in these cases, but getting back compatibility with earlier TiSDK versions is well worth it.
PR: https://github.com/appcelerator/alloy/pull/285
prereqs
Currently need to install alloy from master for the latest changes:Functional test
Build any app (the more complex the better) for iOS device using a TiSDK less than 3.2.0, for example, 3.1.3.
Make sure that the app shows up correctly on the iOS device
Verified with iOS+Android app, with 3.1.1.GA and Alloy master on iPhone5 running iOS 7.something :)
Working using 3.1.3 and iPad running iOS 7
Tested the Radio Taxi App Build process works with the following environment: alloy -v 1.3.0 (installed as above) titanium 3.1.2 (cli) Ti SDK 3.1.3.GA Pushed onto an iPhone 4S running iOS 7.0.4 I used the CLI to build to device (iTunes) There were issues with the Resources folder, causing the iOS device to show an android.physicalCategory error. Blitzing the Resources folder and then running
alloy compile --config platform=ios
sorted the issue and allowed the device builds to not throw an error.After many functional confirmations, I'm marking this as resolved.
Tested with a client POC App alloy -v 1.3.0 (installed as above) titanium CLI 3.2.0-cr3 Ti SDK 3.1.4.v20131213162008 Appcelerator Studio 3.2.0.201312162210 iOS SDK 7.0.3 Xcode 5.0.2 Built for Device and pushed through iTunes Sync to an iPhone 4 running iOS 6 Application ran and displayed successfully.