Success!
The 'regular way' for Homebrew on Iphone really works well!
Steve, you delivered what you promised! Good boy! Thanks a lot.
So, after paying $99, (1x per year), I could turn my activated 1.1.2 regular Iphone into an updated activated 2.0 regular Iphone, but marked as Development Iphone.
You can restore normal 2.0 anytime and turn it back to normal Iphone.
But frankly, there is no difference beside the ability to run your own code (finally!). It still works as a phone, or low speed internet browser (thru EDGE network). Everything's ok!
I will now give the list of actions involved in the procedure (given on apple site, but there are a few big mistakes/vague infos there that took me to insane confused situations at very critical moments...).
- buy a macbook (around $1000 I guess...), upgrade it to last OS & iTunes
- become registered apple developper (free :
http://developer.apple.com/)- download and install iphone sdk (free, main application is named XCode)
- subscribe to standard developper program ($99 1x per year)
- you will receive a 1st completely insane confusing email
(no need to look for the download link you are asked to click, doesn't exist)
- you receive a 2nd email later (24h), an activation email. click the link
- A new link 'Program Portal' will appear in the iphone dev center
- Create your private key with the application named 'KeyChain access'
(existing on all macbooks but becareful, its name is localized)
- Create the 'Certificate' (used to sign your code, allowing apple to identify)
(not instant, follow instructions, approve it, 'pending issuance' will vanish)
- Create the 'APP ID' (a numeric unique value for your application(s), use '*')
- Register the UDID (I only tried with 2.0. Xcode shows a long numeric ID)
(EDIT:iTunes can show it, but it's hidden. Click on 'Serial number')
(here I updated from 1.1.2 to 2.0 using iTunes, to see it, but I couldn't)
- If you were with fw<2.0, just upgrade to 2.0 but through XCode only.
- If you were already with 2.0, restore again to 2.0 but through XCode only.
(while restoring the iPhone, XCode will add the registered UDID somewhere)
(it's written that it needs to be a regular activated iPhone with network ok)
- Create a 'Provisioning File' (just a file that references APP ID, UDID, etc...)
All is ready for homebrew compilation :
Inside any sample projects made for the final Sdk, hit Infos button and
select both the signing certificate and the provisioning file. Now you can select your iPhone instead of just the simulator and the application runs on your iPhone!
An icon is automatically created on the iPhone (I tried GLSprite sample and an icon GLSprite appeared showing the tiny blue sapphire).
If launched from XCode, the application can even be debugged in real time, through the USB link, while running on the iPhone!
If you unplug the iPhone you can run the application through it's new icon! Homebrew ready!
The certificate has an expiration time of 6 month it seems. Normally you should be able to request another one without paying again.
You can turn up to 100 iPhones into development iPhones with same account.
There is a similar procedure for submitting code for world wide distribution through applestore. But your code is to be very clean, gentle and well documented! (not exactly nowadays homebrew...)
The interest of the approval by apple is of course that people can get if for free without paying for standard developper program and without the need to own a macbook. But there will be of course unapproved interesting stuff.
So it's really friendly for owners of iPod, iPhone and iPhone 3G.
They locked iPhone to avoid large distribution of unapproved code world wide, but you are really free to write and run your own nasty unapproved code for your own needs (and you can publish their source to share it with other standard program subscribers)!
That really smells good homebrew to me!
No ETA on the completion of my study of Open GL ES.
Once done, it will give me clues about the appropriate lowest 3D library layer structure I should use to have iPhone homebrew compatible with other platforms homebrew.
EDIT :
Actually iTunes can show the long identifier (40 hex chars.). But it's hidden.
You have to click Serial number and it switch to Identifier... Hard to guess...