My take on Apple, section 3.3.1 of the ToS and Appcelerator’s Titanium

Recently, Apple decided to add a clause into the (beta) Terms and Conditions of it’s developers tools:

It states:

3.3.1 — Applications may only use Documented APIs in the manner prescribed by Apple and must not use or call any private APIs. Applications must be originally written in Objective-C, C, C++, or JavaScript as executed by the iPhone OS WebKit engine, and only code written in C, C++, and Objective-C may compile and directly link against the Documented APIs (e.g., Applications that link to Documented APIs through an intermediary translation or compatibility layer or tool are prohibited).

Just some facts about Appcelerator’s Titanium tools and their app creation process, which we hope will see them on the safe side of Section 3.3.1:

“As a pre-requisite to using Titanium, developers must install the Apple iPhone SDK and Apple XCode development toolchain.

They must install Titanium on a Macintosh and they must have a valid Apple Developer membership before they are even able to create a Titanium-based iPhone/iPad application.

Titanium produces a valid XCode project (*.xcodeproj) at application creation, generates Objective-C (and sometimes C/C++) and executes the xcodebuild to compile the XCode project into a native application using Apple’s published APIs.”

The tools launch Apple’s iPhone simulator to test applications, create the correct Apple binary for integration to iTunes when testing the signed application on a device and uses all the certified Apple tools for signing to create the final distribution.

“The developer must obtain their own Apple signing certificate for creating applications with Titanium and Xcode and the developer uses their own Apple iTunes Connect membership and login to upload the package to Apple for submission. ”

via their developer blog : http://bit.ly/cVfY0w

Adobe’s CS5 however, would allow developers to build iPhone app on Windows, which I’m sure is an absolute no-no. The process appears to be quite a kludge (of the AIR publishing process), from what can be seen in this tutorial by Lee Brimelow (who was extremely vocal about his disdain for Apple in a recent blog post: http://theflashblog.com/?p=1888 )

See his tutorial on Adobe’s app creation process here : http://gotoandlearn.com/play?id=116

One thing to note after watching this tutorial is the resulting iPhone app filesize of the (less than 20 lines of AS3 code) Flash app: 3.2Mb !

That’s pretty big for what it is! And this makes me wonder what else Adobe are bundling with the app. Possibly its ‘LLVM’ (a low-level virtual machine – which is known as an ‘Ahead Of Time’ compiler – see here from Adobe: http://bit.ly/MQtRZ – as opposed to a ‘Just In Time’ compiler, which is effectively what the desktop Flash player is)

The Phreadz iPhone application : built with Titanium

I have been using Titanium to create a far more complex app than this example for the iPhone for Phreadz (see image above), which is capable of doing some things that none of the other potential offenders’ platforms are possible of doing (taking and manipulating photos, recording videos, recording audio, etc.etc) which I write in JavaScript, which then gets compiled using the process stated above to create a proper, signed iPhone app for submission to the AppStore.

The resulting file size of the app? Only 1.6Mb. Amazing.

Another key issue here is that Titanium is completely open source, compared to Adobe’s very much closed platform.

ps: I’m not a Flash hater at all (as many readers who have known me for years will know). I’ve built many useful things on their platform for many years – when it makes sense to. And I agree that desktop performance of it can be awful – what with web pages and blogs literally riddled with them, often causing any browser to crash.

Adobe should concentrate on making their tools support the output of HTML5 .

I have had no experience of Monotouch or Phonegap, though from what I can gather, Phonegap (which is extremely simple, yet limited to what it can actually do beyond what a browser/webapp can do – but with some hooks into a few of the hardware APIs) might also be on the safe side too, since they ironed out issues with Apple a while ago.

UPDATE: PhoneGap use has now been approved under these new terms. See: http://blogs.nitobi.com/jesse/2009/11/20/phonegapp-store-approval/

I, along with many other developers and evangelists fully support Appcelerator and their Titanium tool for iPhone app development. I have found it to be the most exciting and enabling project I have ever seen in many years (15) of mobile and web development.

I’m seriously crossing my fingers for Appcelerator. The hard work they have done to enabled so many great things to be built for the iPhone, the iPad, Android as well as on desktops for OSX, Windows and Linux is truly remarkable.

This story has generated a huge amount of discussion on blogs posts from places like TechCrunch that it’s definitely fired up a lot of passion on both sides of the argument.

0 Responses to “My take on Apple, section 3.3.1 of the ToS and Appcelerator’s Titanium”



  1. Leave a Comment

Leave a comment




Who is this ‘kosso’ anyway?

I am a 'Createc'. A creative technologist, entrepreneur/ hacker/ geek. Worked on building things on the web for over 12 years.

Used to work at BBC News interactive and created the publishing and delivery systems for video news to get distributed on huge screens in major railway stations around the country.

I left the BBC to become CTO / sole-lead architect/developer at podcast.com for three years.

I have now left them to build a start up a new system called 'Phreadz', which is a 'Social Multimedia Conversation Network', integrating everything that is 'V.I.T.A.L' to us on the web. Video, Images, Text, Audio and Links.

I built the whole thing my myself. I programmed every line of code and positioned every pixel. I'm looking forward to attracting an hiring new members of the team to help me out! :)

There are currently over 1000 happy and helpful beta testers on the system so far and one client of a white-labelled solution.



kosso's flickr stream

April 2010
M T W T F S S
 1234
567891011
12131415161718
19202122232425
2627282930  

stats

  • 258,664

Top Clicks

  • None