Home User CP Donate Chat Register Today!  
  Get New posts Faq / Help?
   


Go Back   Hackint0sh > Projects and Hacks > iPhone > General > General

Reply
 
LinkBack Thread Tools Display Modes
  #1 (permalink)  
Old 03-10-2008, 05:54 PM
NerveGas
Status: Offline
Member
 
Join Date: Jul 2007
Posts: 49
Rep Power: 0
NerveGas is on a distinguished road
Default [NerveGas Blog]: iPhone SDK, DRM, and the Open Tool Chain

With the release of Apple's SDK, the development community has come to the rude awakening that it's not all it's cracked up to be with its restricted features, missing methods, and heavy distribution scrutiny. Nobody had imagined that a development platform would be so heavily DRMed, but it looks like the compiler itself even includes DRM key exchange components. Where does this leave developers? Well, it looks like it's impossible to build anything with the Apple SDK that is DRM-free, possibly requiring approval from Apple just to run.

Apple's SDK restrictions appear to be taking a swipe at the open source community, which has already developed a functional open SDK (the tool chain), community distribution channel (via Installer.app, PXL, etc), and a very large audience of users. Nick Penree of Jailbreakme.com fame found over one million users used his site to install NullRiver's community installer on their device - just within the first few weeks. Apple is in fact lagging behind the open community, and rather than the open source community duplicating commercial efforts, Apple is embarrassingly the one trying to duplicate the open source community today. As a result, many of Apple's SDK restrictions appear specifically targeted at this established community: Apple has banned NullRiver's installer app, as well as PXL and other software installers, essentially locking out any third party distribution channels from iTunes (which may equate to unfair competition). They have also guaranteed themselves full control over the accessories market by limiting the SDK's ability to communicate with accessories. Finally, Apple has secured themselves potential contracts with game manufacturers, such as Nintendo, and with companies such as Sun and Adobe by banning any software that "executes another program's code" on the iPhone. This means companies will need to ink a special deal and pay a hefty ransom to Apple to release things like Java, Flash, and video game emulators (many of which are already available using the open tool chain).

The good news is that, in spite of Apple's attempts to thwart "unauthorized" software development on the iPhone, we now have two different SDKs to choose from - the open tool chain and Apple's. Enterprises requiring DRM control of their software, who can live with the restrictions that Apple's SDK imposes, are likely to fair well with an "officially supported" compiler and support from Apple. But where Apple has left the rest of the development community out to dry - that is, open source developers and small software houses (which will likely not see the light of day until 2009), the open tool chain provides the only way today to build DRM-free applications for the iPhone, and a distribution channel that can reach as large an audience (albeit, not as captive) as iTunes can. The open tool chain also runs on Linux and Windows, and doesn't restrict the developer from using any of the more advanced APIs - you can even run applications in the background, as God intended it. The various dev-team camps have made it so easy to add custom applications to the iPhone, in fact, that any grandma can do it today with just a few clicks - almost easier than using iTunes!

It seems that now, more than ever, does the community need to support the open source tool chain and the ability to freely write and run software for the iPhone. Why? Because Apple's SDK is designed for enterprise - and makes no bones about alienating everyone else. Fortunately, we have a free tool chain that has almost a year of maturity, a fantastic (and free) support base, and hundreds of great applications available today for the iPhone that anyone can download and use.

The Apple SDK, as many have come to find, has seemingly crippled much of the functionality that initially set the iPhone apart when first launched. Even simple features like the ability to run a program in the background, have been crippled in the Apple SDK. Fortunately, the APIs that the open tool chain uses seem to reflect more closely to the "real SDK" used by Apple to create their own applications. Most of the objects you use in the Apple SDK appear to be "wrappers" around these real objects, which limit their functionality. It's like a "fisher-price" SDK, so developers have a horn to honk, while Apple uses the private APIs for "real" software. While the Apple SDK lets you write applications that look somewhat like iPhone applications, the open tool chain allows you to get right down to the metal and write applications using the same objects as Apple's own applications - and use the same spectacular effects that are otherwise restricted.

If you think about it, a lot of the agreements we see on hold today likely have to do more with monopolizing the iPhone's distribution chain than actual technical hurdles. Take Adobe Flash for example - it runs fine on 400Mhz machines, and even runs on weaker mobile phones without any problems. It's likely that rather than technical problems holding this up, that Adobe simply doesn't want to pay whatever ransom Apple is demanding to put code that "executes other code" onto the iPhone. All of Apple's restrictions and T&C for their SDK point to market control being the key factor.

Just to confirm, the "Aspen" frameworks included with Apple's SDK appear to fully support the APIs used by the open tool chain - likely, because these are the real low-level APIs that are being used by Apple's own applications. While the Apple SDK has removed many methods from their headers, they still exist in the framework. For example, all of our old friends from UIHardware and UIKeyboard are in there:

30b32e9c t +[UIHardware deviceOrientation:]
30b3375c t +[UIHardware fullScreenApplicationContentRectForCurrentDeviceOr ientation]
30b32e40 t +[UIHardware fullScreenApplicationContentRect]

30be7744 t +[UIKeyboard activeKeyboard]
30be77d4 t +[UIKeyboard defaultSizeForInterfaceOrientation:]
30be7818 t +[UIKeyboard defaultSizeForOrientation:]
30be778c t +[UIKeyboard defaultSize]
... and so on

What does this mean? It's very encouraging, as 2.0 is likely to run all existing applications written on the open tool chain with few, if any, modifications! And this makes perfect sense - otherwise Apple would have to rewrite their own apps (which use the same APIs), presenting a significant Q/A problem (bringing their software back to beta quality). Should this change in the future, I have already begun building a set of compatibility libraries that should enable tool chain applications should Apple ever try and remove support for it.

As it stands today, the open tool chain is likely to be the dominant tool chain going into 2009, as the Apple SDK is clearly not ready for general adoption yet. Many pieces do not appear to function correctly, or at all, and there is presently no way to run these applications on the iPhone. Come June, only a limited number of developers will likely be admitted into the developer program, based on some remarks I've seen from Apple. The open tool chain works today, and has had almost a year to mature into what has become a very robust SDK with a large distribution base. I encourage developers to continue using it, and think it's going to be around for quite a while.

Last edited by NerveGas; 03-10-2008 at 06:30 PM.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl this Post!Reddit! Wong this Post!
Reply With Quote
  #2 (permalink)  
Old 03-10-2008, 06:27 PM
kalmar
Status: Offline
Junior Member
 
Join Date: Mar 2008
Posts: 13
Rep Power: 0
kalmar is on a distinguished road
Default

My concern is, will people with unofficially activated / unlocked iPhones be able to buy and install the official SDK apps? Because I am sure that there will be many "big" applications which will only be released through iTunes, and for sure iTunes knows whether you have registered an iPhone or not!

I don't want to miss out on all that new software (because I'm sure a lot of it will be compelling and worth the money) but I won't want to be forced into the very expensive airtime contract.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl this Post!Reddit! Wong this Post!
Reply With Quote
  #3 (permalink)  
Old 03-10-2008, 06:34 PM
NerveGas
Status: Offline
Member
 
Join Date: Jul 2007
Posts: 49
Rep Power: 0
NerveGas is on a distinguished road
Default

If Jailbroken, they should be able to use both.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl this Post!Reddit! Wong this Post!
Reply With Quote
Sponsored links Remove advertisements
Advertisement
Advertisement

  #4 (permalink)  
Old 03-10-2008, 08:09 PM
zenmaster
Status: Offline
Senior Member
 
Join Date: Jul 2007
Posts: 126
Rep Power: 0
zenmaster is an unknown quantity at this point
Default

Excellent post NerveGas.

Typically Apple can only see possible revenue avenues for its products and services, trying to squeeze every last penny out of us.

In a way, they are kinda insulting, as without the vibrant and free-flow of tool chains, open source developers, jailbroken phones, the iphone would soon become boring and not very useful.

Its all fair and good having a sexy looking phone, but it aint no miracle. Since using the iphone for a few months, some aspects of the software and UI are (and i'm going to shout and swear) F**KING SHIT.

If I wasnt able to install the wonderful and interesting apps from Installer, I would be seriously considering selling the phone on ebay.

To conclude, the money grabbing arseholes of Apple, have decided to go down the road of boredom, control and revenue opportunity. Ok, I suppose any company with shareholders would be similar, but there is no need to be rude to talented people, who spend their time developing, improving their product and making something potential boring (multi-touch UI - yeah, NEXT) into something more sexy than sex itself (c'mon i'm a geek you know ).
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl this Post!Reddit! Wong this Post!
Reply With Quote
  #5 (permalink)  
Old 03-10-2008, 08:36 PM
pipas@intra.co.mz
Status: Offline
Member
 
Join Date: Jul 2007
Location: Maputo, Mozambique
Posts: 82
Rep Power: 7
pipas@intra.co.mz is on a distinguished road
Send a message via Skype™ to pipas@intra.co.mz
Default

Excellent post NerveGas
I agree totally with you
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl this Post!Reddit! Wong this Post!
Reply With Quote
  #6 (permalink)  
Old 03-10-2008, 09:03 PM
enderffx
Status: Offline
Senior Member
 
Join Date: Sep 2007
Location: Germany, Europe :)
Posts: 198
Rep Power: 13
enderffx is on a distinguished road
Default

Great summary, thx for the effort.
I hope people keep on dev'ing on the Open Toolchain !

Greetings,

Ender
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl this Post!Reddit! Wong this Post!
Reply With Quote
Sponsored links Remove advertisements
Advertisement
Advertisement

  #7 (permalink)  
Old 03-11-2008, 10:34 AM
Moria
Status: Offline
Junior Member
 
Join Date: Oct 2007
Posts: 6
Rep Power: 0
Moria is on a distinguished road
Default

Quote:
Originally Posted by NerveGas View Post
Take Adobe Flash for example - it runs fine on 400Mhz machines, and even runs on weaker mobile phones without any problems. It's likely that rather than technical problems holding this up, that Adobe simply doesn't want to pay whatever ransom Apple is demanding to put code that "executes other code" onto the iPhone. All of Apple's restrictions and T&C for their SDK point to market control being the key factor.
Thanks for all the hard work and keeping this alternative way open, but I don't think that money is the reason for not having flash on the iPhone. I think it's more like this (and also this and this).

Quote:
Originally Posted by NerveGas View Post
Come June, only a limited number of developers will likely be admitted into the developer program, based on some remarks I've seen from Apple.
The general positive response from the Mac developer community also shows that a lot of them are quite pleased with the iPhone SDK and it's potential and I think that we will see a lot more applications in June than you suggests. (But that's just my take, I have nowhere near as much iPhone knowledge as you.)

Of course most of them won't be free, but I'm already paying for good shareware apps for the Mac so I wouldn't mind doing that for good iPhone apps as well.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl this Post!Reddit! Wong this Post!
Reply With Quote
  #8 (permalink)  
Old 03-11-2008, 01:28 PM
kultschar
Status: Offline
Senior Member
 
Join Date: Oct 2007
Posts: 472
Rep Power: 26
kultschar is on a distinguished road
Default

If the "official" apps are indeed pretty special (e.g. kick arse games from EA etc) do you think there will be "hacked"/"pirated" iphone apps doing the rounds??? I can see this being a big problem for apple if possible unless maybe they keep prices to reasonable proportions however I guess big Software companies such as EA will be wanting a considerable chunk of cash from each software purchase
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl this Post!Reddit! Wong this Post!
Reply With Quote
  #9 (permalink)  
Old 03-11-2008, 02:39 PM
kalmar
Status: Offline
Junior Member
 
Join Date: Mar 2008
Posts: 13
Rep Power: 0
kalmar is on a distinguished road
Default

Quote:
Originally Posted by kultschar View Post
If the "official" apps are indeed pretty special (e.g. kick arse games from EA etc) do you think there will be "hacked"/"pirated" iphone apps doing the rounds??? I can see this being a big problem for apple if possible unless maybe they keep prices to reasonable proportions however I guess big Software companies such as EA will be wanting a considerable chunk of cash from each software purchase
Exactly! It's a big problem for the hacker community too (and people with jailbroken phones) if they are suddenly defined as "pirates" because by some exploit it is also possible to run pirate copies of the official SDK apps.

I'm sure that at the least, the downloaded official apps will be watermarked with the buyer's details, or perhaps the binary will only run on the phone with matching IMEI or MAC etc, but a determined hacker will always find the solution to that.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl this Post!Reddit! Wong this Post!
Reply With Quote
Sponsored links Remove advertisements
Advertisement
Advertisement

  #10 (permalink)  
Old 03-11-2008, 02:56 PM
Otaviano_09
Status: Offline
Member
 
Join Date: Jan 2008
Posts: 71
Rep Power: 5
Otaviano_09 is on a distinguished road
Default

Thanks for posting that, it was really informative.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl this Post!Reddit! Wong this Post!
Reply With Quote
Reply

Bookmarks

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On




All times are GMT +2. The time now is 09:13 AM.



Powered by vBulletin® Version 3.8.2
Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.3.2 Ad Management by RedTyger
follow us on Twitter!

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105