
We all know that you can’t run Flash on Apple’s mobile devices. But now Apple is trying to make it impossible – illegal – to develop for iPhones in any other development environment but Apple’s own. Oh boy.
There’s one primary target this interferes with: Adobe, whose upcoming Packager for iPhone in CS5 lets you develop applications in Flash (or specifically, ActionScript 3, Flash’s native scripting language) and then cross-compile them so that they work in both a browser’s Flash plugin and as a standalone iPhone application.
The thinking goes like this: While applications written this way might not have the performance of applications written in Objective-C, the iPhone’s native development language, they’d be good enough – and they’d allow developers who already know ActionScript to avoid having to learn a new language. (At least in theory. The game above, “THAT ROACH GAME“, was made with Flash. One reviewer noted “The animation and fades must be computed with a hand calculator. The developer should consider some night classes.”)
In iPhone OS4′s licensing agreement, however, it appears that Apple is specifically proscribing what languages can be used to make iPhone apps.
How would Apple ever know what language was originally used if the end result is Objective-C (or C or C++)? From speaking to a Flash developer who may abandon an iPad application he has already been working on in ActionScript, most of the cross-compilers* use a set of unified libraries that are easy to recognise, even after the being compiled into iPhone apps.
In short, Apple is forcing a huge number of developers to change their development environment of choice simply to encourage them to move away from a competitor’s platform. It is unclear if apps already on the App Store that have been developed using these tools will be banned.
Hello, FTC? Apple just passed Go. ** [★]
* This changed agreement affects more than just Flash developers, although it is my opinion that it is only Adobe with which Apple is concerned strategically.
** OK, this isn’t an antitrust issue, per se. But it’s certainly unfair.


















matt
Friday, April 9, 2010 at 9:23 AMmy god. the surprise continues! what a load of crap.
queue flash to c++ converter in 3.. 2…
so really… we still like Apple? how does this help anyone except them?
matt
Friday, April 9, 2010 at 9:24 AMof course they are still better than winmo7 that force you to use c#
wwwillis
Friday, April 9, 2010 at 1:07 PMI think there are a lot more happy C# developers out there than Objective-C
matt
Friday, April 9, 2010 at 5:18 PM@wwwillis:
Oh, I agree 1000%
but you don’t have to use objective c on iphone, you can use c and c++ for pretty much everything. and it looks as if the same is true for Android with the NDK. crucially, this means that you can use the same language across platform, with a simple cross platform engine that wraps out the objective c or java specific stuff. it doesn’t look like you will be able to do that with WinMo7, its JUST C#. now there is mono for android and iphone, so theoretically you could use C# for all three, but it will probably get caught by this stupid anti flash thing too! as it is pretty much doing the same thing! all in all though, I like C# for getting things done quickly, I like C for getting stuff done properly. on these performance constrained mobile devices, I don’t think such a constrained, managed language is such a good idea.
Shane
Friday, April 9, 2010 at 9:36 AMHow does anything they done in the last six years help anyone!?
Can’t argue that I love there stuff, but this just plain stupid…
Martin
Friday, April 9, 2010 at 10:10 AMThis licensing restriction would also apply to other generic smart phone IDEs such as Titanium, which allows you to develop in HTML5, CSS3, and JS then deploy to iPhone, iPad… or Android. This last fact is probably more the reason for the licensing restriction than any squabble between Adobe and Apple – they don’t want developers to easily provide their direct competition with ammo.
Their probable defense will be that they don’t want poorly performing apps reflecting on them or their platform. Unfortunately for them there are two flaws with this argument.
Firstly, Apple is always boasting about how many apps they have in the AppStore. So, how can they now turn around and say that an individual or small group of poorly performing apps reflect badly on them or their platform?
Secondly, apps developed on Titanium are equally likely to perform poorly on Android. So, the platform will not suffer in comparison, only the individual apps and, by extension, the generic IDEs.
For my part, I am going to develop any way I feel like. If it will run on an iPhone and it gets past Apple’s draconian approval process, great. If not, Android will have my app and I’ll happily take reduced profit rather than pander to those crooks over at Apple.
Benjibuls
Friday, April 9, 2010 at 10:20 AMWhat a complete load of bollocks. I have quite a few friends who develop for the iphone in IDE’s like monotouch and Unity and if they really rain this down on apps then they’re going to lose a lot of apps that only exist because they’re one part of a multi-platform app or environment.
Apple better stop behaving like a 200 pound gorilla , it’s a really ugly ugly look.
Glenn sweeney
Friday, April 9, 2010 at 10:22 AMUm objective c is crap and c# / vb / any .net compiler including c c++ etc etc
i love my iphone but just pull back your fanboyness a little hey.
Noone would choose willingly objective c over c#. Esp when its a .net platform that lets you code in ANY language including python (ie python.net) etc etc etc.
Bernie
Friday, April 9, 2010 at 1:05 PMOh no … not .Net
I hate .Net as I don’t like any runtime library requirements, which .Net most certainly is.
I remember once installing a program that require .Net 2.0 so Ok I downloaded (a very fat) .Net 2.0 installation; then 2 months later I need to use another application that wouldn’t work with version 2.0 of .Net and was told to install .Net 1.0 ???? WTF, it’s not backward compatible? How many different versions do I have to have of .Net? I hope this still doesn’t happen with the latest versions of .Net
What happened to the good old days where I just had a single EXE and didn’t need a lot of supporting crap?
matt
Friday, April 9, 2010 at 5:26 PMmy sentiments exactly! and its not just the consumers, but the developers too! like xna games ran great on the PC! but as soon as you took them on the xbox, some random .net things ran like SHIT! because MS didn’t implement them properly! just as consumers are left with a never ending stream of prerequisites and dependencies to try and sort out with .net apps, developers are left reliant on a whole string of management and apis ect being implemented properly! and if the aren’t? then your simply shit out of luck! and then if you want it to work on multiple platforms, well… you better pray everyone implemented everything properly!
Paul Knight
Friday, April 9, 2010 at 11:03 AMSeems to come from the “embrace and extend” playbook of Microsoft’s worst era… you don’t try to look good by building better systems, you try to look good by crippling the competition. They have deliberately made web on iPad an inferior experience to make the App store look better, by holding out the promise of HTML5, that they know won’t compete properly for years yet.
Michael
Friday, April 9, 2010 at 4:56 PMIs Steve Jobs building a lair under a volcano?
This a small counter move against Adobe in Apple’s grand plan. Apple sure doesn’t want Apps sliding easily cross platform especially with a slew of products on the way that run flash. If enough free radicals think they can buy an alternative and still get the apps, Apple’s end-game may have a problem.
So what’s the end game? Ask Rupert Murdoch. And so why will people use a pay website when they can just use a free website? “They’ll pay when they have nowhere else to go.”
You see? And those paysites in turn will have to pay Apple to access the [future] ubiquitous iPhone/iPad. So how do you motivate free websites to become paid content? You squeeze their money. So where do they get their money? Advertising. So what runs the advertising? Flash.
Over-the-top conspiracy? I’d reckon Steve Jobs is stroking a white cat right now.
red t-rex
Friday, April 9, 2010 at 5:12 PMThis may not violate anti-trust regulations but it comes pretty close to being anti-competitive under the watchdogs in Australia and Europe. The ACCC in Australia might not have the balls to act but the Europeans have proved they don’t hesitate. It’s only a matter of time before they mandate Apple be a little more open and fair. How is this any different to the browser battle with Microsoft?
The thing that Apple has going for them is that this behaviour will not stop consumers buying it and the sales will force developers to begrudgingly accept the new rules.
john
Monday, April 12, 2010 at 12:28 PMI find it strange, but I agree with Apple.
If 1000 odd apps use some sort of alternate framework, then Apple then becomes forced by default
to support it even though they never wrote it. Why ? If a bug exists in the alternate framework, and a OS Upgrade breaks it…. X thousands of users with the app will then complain to Apple and blame the OS upgrade… Not the App.