I have read this in response:
"Yes, it is banned since it includes a language bridge. Also, the original coding languages can include Ruby and Python.
Apple will simply look for the signature of a Titanium project and reject application. It doesn't matter that Titanium emits Objective-C, I'm sure there's an easy way to find out from a compiled bundle if Titanium was used."
A few points to consider…
IMO, the 3.3.1 TOS issue attempts to prohibit the use of a "runtime" translation layer embedded in the app (ie, dll), rather than using a static language translation bridge to compile native objective-c project files. The wording by Apple is ambiguous and pretty confusing in this regard, which is why many developers and platform developers are concerned. Without clarification, it could potentially cut at the core principles of software engineering.
The key differentiator for using Titanium is that it does NOT embed a compiled runtime library within an app. It generates objective-c project files, which are then compiled into binary format using the official iPhone SDK and within full compliance of the TOS. Although the objective-c code is generated through an "intermediary", the process does itself does not compile a runtime intermediary (ie, dll), like Adobe's approach with Flash. The project files are all native code using published iPhone APIs. A lot of 3.3.1 chatter seems to lump Titanium into a general basket without much forethought.
Also keep in mind… apps developed and submitted to the app store with the current 3.2 TOS (ver. 2/4/10) (and below) are not subject to the proposed terms and will continue to use the existing TOS supported by Apple. This is why SnaPost was approved and why an app I developed was approved within 2 days of submission.
Apps compiled with 3.2 SDK will also be backwards compatible to the point that Apple decides to deprecate 3.2, which may be 2 years from now. During this time, apps can be developed using 3.2 without any concern. Plus, the new TOS rules are still "beta" and are not final decisions.
Regardless of Apple's decision, iPhone apps built with Titanium may still be in compliant even after the new TOS change, simply by focusing on Webkit and HTML5 (pre-Ti 0.9.3). This is explicitly allowed in the pending rule change and a reason why Phonegap has recently been approved by Apple.
Even when users upgrade their device OS to 4.0, it does not change anything regarding your apps TOS. It NOT an "end user license"; it's a change in the developer's TOS for compiled binaries distributed in the app store at the time of compilation. This means all existing apps will remain in the marketplace without fear of being pulled due to non-compliance. Otherwise companies like EA Mobile, Gameloft, Tapulous and ngmoco:) will have to pull their highly successful apps after the 4.0 release; they use an "intermediary" framework as well, specifically a runtime translation library.
If Apple pushes that button, they would undoubtedly piss off a every consumer who have paid for an app, regardless of an app's quality, and will begin to erode consumer confidence, which is the heart of Apple's strategy.
To see what kind of iPhone apps this would affect, just visit this list.
Titanium will continue to evolve into a very mature framework, regardless of Apple's decision, and will continue to help clients, brands and software companies develop cross platform solutions. SugarCRM made a great choice.
iPhone apps built with Titanium do not include Ruby and Python (as far as I am aware) - I think there might be confusion with the languages available for Desktop Titanium apps.
There has been no official response yet - the most recent official response is here on the blog : http://developer.appcelerator.com/blog/2010/04/update-on-apple-sdk-4-0-and-tos.html
And here's a link to my take of the situation : http://developer.appcelerator.com/blog/2010/04/update-on-apple-sdk-4-0-and-tos.html/comment-page-2#comment-2311
fingers firmly crossed!
ps: PhoneGap has now been approved under the new terms of section 3.3.1
SnaPost was approved under 3.3.1, so I think we're good for now
double post, dag-nabbit!
>>Also keep in mind… apps developed and submitted to the app store with the current 3.2 TOS (ver. 2/4/10) (and below) are not subject to the proposed terms and will continue to use the existing TOS supported by Apple.
I don't think that's right. The announcement in the ADC that I saw clearly stipulated a precise date by which i HAD to agree to the new ToS. There was nothing there to indicate that the ToS related solely to OS4.0 - in addition, the claim by some that this change relates to multi-tasking functionality has been debunked in almost every place that I've seen it raised as a practical driver for the 3.3.1 change.
From the tweet I observed from @appcelerator, Snapost was approved under an account that had agreed to the new ToS whilst still being a 3.1.x app - since It's not possible to deploy 4.0 apps to the app sore (as it's still in beta).
@Chris: Yes, seems confusing. The current "published" iPhone Developer SDK TOS is 3.2, rev. 2/04/10 (3.2 as of today 4/14/10). This document does not contain the 3.3.1 update.
After agreeing to the new TOS, the published version did not change. So, the question remains. Which TOS are we subject to? Even after agreeing to the update, the new doc is not available online.
Hi there Terry,
I've managed projects with complex contractual issues and had company lawyers assigned to my project teams. I've always found them to be excruciatingly thorough and by comparison what I've read is shockingly lax.
I've analysed each sentence in the relevant clause and Titanium I believe is clear in each case. I will say, to those would do have the agreement, check the definitions and you may notice an obvious omission.
Hi there Terry,
I've only recently gone back over the doc as a whole and you're right. I'd advise folks to read to doc in full and scan for clauses defining the scope with respect to other agreements (i.e. those you may not have noticed you've agreed-to when installing stuff).