Page 1 of 2 12 LastLast
Results 1 to 20 of 24

Your favorite Apple, iPhone, iPad, iOS, Jailbreak, and Cydia site.

Thread: The Unofficial iPhone SDK: Guide to writing native iPhone applications

  1. #1
    iPhoneaholic ReVan's Avatar
    Join Date
    Oct 2007
    Thanked 526 Times in 109 Posts

    Post The Unofficial iPhone SDK: Guide to writing native iPhone applications
    The field of unofficial third-party native iPhone application development is maturing rapidly. Thanks largely to the spectacular from Nullriver Software (see our guide on using it to install applications on your iPhone) and the efforts of a handful of diligent third-party developers, there are now well-working native instant messaging clients, a GPS application, and several other useful apps.

    Bringing more developers into the fray, however, is a process that has been mitigated by a three significant factors: 1. Developers have yet to establish a method for monetizing native iPhone applications; 2. The fact that Apple could introduce an iPhone software/firmware update that disables most/all third-party applications, or could introduce its own scheme for third-party applications that obviates the current method; 3. The lack of a cohesive SDK (software development kit) for creating applications.

    The first issue will likely see some progress shortly: Nullriver Software tells they’ll soon be implementing a method to charge for applications. The second issue is more precarious, hinging on Apple’s whim from update-to-update until (if) some formal policy is enacted. The third problem is in the early stages of resolution, thanks to the efforts of Lucas Newman, an avid iPhone developer who worked on the first native iPhone game, Lights Off and helped develop our initial 5-step native application install guide.

    Lucas’ unofficial SDK consists of the following components:
    1. An 18-page PDF instructional guide with steps for downloading and installing the development toolchain.
    2. An Xcode template
    3. A set of sample iPhone applications

    and provides all the foundation necessary for intermediate to advanced developers to begin creating native iPhone apps.

    As discussed in the guide, most of the familiar Cocoa frameworks exist on the iPhone, including: Core Foundation, Foundation, Core Graphics, Core Audio, and CFNetwork. There is also a UIKit, which is roughly equivalent to the Desktop Mac OS X’s AppKit

    Unfortunately, there is no interface builder for the iPhone: all interfaces are done in code.

    Lucas’ guide includes sample code for creating a window, handling input (swipes, etc.), transforming views in 3D and more.

    Sample applications, along with built versions and all components (source, images, etc.) include: FlipACoin, Motion and NetServices. You can move these applications to your iPhone by putting on your iPhone, then install OpenSSH (under ‘System’ in the interface) immediately.

  2. The Following 5 Users Say Thank You to ReVan For This Useful Post:

    b4it (2007-12-27), brokensword (2007-10-23), kaosouy (2008-03-28), masp (2007-12-01), method77 (2007-12-07)

  3. #2
    Join Date
    Jul 2007
    Thanked 18 Times in 18 Posts

    Sweet, this is what I was looking for. Thanks man.

  4. #3

  5. #4

  6. #5
    only mac users can develop for the iphone?

  7. #6
    ok I'm not a devloper
    but still wondering what's preventing devloper from doing a native chat app that contains yahoo too
    I use yahoo in everything
    how they could add yahoo in beejive and can't add it to Apollo or mobile chat apps

    I appreciate the answer that not critisize my low knoledge in 3rd party apps devloping

  8. #7
    Quote Originally Posted by samx View Post
    only mac users can develop for the iphone?
    The toolchain can be installed on Linux or under Cygwin on Windows as well.

  9. #8
    Thank goodness... I've been looking for one of these. I'm going to run off and mess around on my iMac now.

    Anshu Chimala
    Follow @anshuchimala on Twitter
    Visit, my latest project for iPhone/iPod touch.

  10. #9
    i tried installing the toolchain in windows vista with cygwin. its really hard for a noob like me and i was not successful. can anybody provide detail instruction for noobs like us.

  11. #10

  12. #11
    Quote Originally Posted by NetMage View Post
    I have tried this guide and I'm very very close...
    The toolchain installed well enough--only one error happened when I was running "make" on odcctools, I believe, but when I ran make again it worked just fine.

    So now I have all the necessary stuff installed in cygwin, and I can run "arm-apple-darwin-gcc", etc, without any problems. However, I've downloaded the source for the Hello World app and saved it all in a folder called "HelloApp" in Ccygwin. In cygwin, I cd into "/HelloApp" and run make.

    This is where it gets ugly... I get three errors from /usr/local/bin/arm-apple-darwin-ld. One is "/usr/local/share/iphone-filesystem/usr/lib/libobjc.dylib" "bad magic number (not a Mach-O file)"
    The other two are the same Mach-O error for "libz.1.dylib" and "libstdc++.6.dylib" both in the iphone-filesystem directory.

    So I'm assuming I didn't get the filesystem copied properly. I used the vfdecrypt method for the 1.0.2 firmware image on a Mac running OS X 10.4.9, by the way.

    I'm going to try SCPing the lib directory off my iPhone now... If that doesn't work I'll copy the whole filesystem. If anyone else has some ideas send me a PM or something.

    I'll update this post if I make any progress and maybe write a guide later for Windows users...

    By the way, I'm doing this on Windows XP (I don't trust Vista with this kind of stuff ).

    Update: Copying the "/usr/lib" folder off my iPhone with WinSCP and replacing the "Ccygwin\usr\local\iphone-filesystem\usr\lib" folder with that one made it compile at last! For any of you having similar problems, make sure you get the right files off the iPhone. Apparently decrypting the dmg can get a little corrupted.
    Last edited by Drakenza; 2007-11-24 at 08:19 PM. Reason: Got it.

    Anshu Chimala
    Follow @anshuchimala on Twitter
    Visit, my latest project for iPhone/iPod touch.

  13. #12
    i get confused on step 4. i dont have a /home directory and i svn dont work for me. it say no such command.

    made home directory and updated my cygwin to install web and dev applications. svn is working for me now. im currently downloading trunks, wish me luck. i have no idea what im doing. hehehehe
    Last edited by forsyt; 2007-11-25 at 01:37 AM. Reason: Automerged Doublepost

  14. #13
    I'm certain the reason why most people are having problems compiling the toolchain stems from not properly getting the iphone filesystem. usually they use some method that will break the symbolic links, thereby breaking the filesystem.

    what i did to get the filesystem flawlessly and easily was:
    1. Make sure you have OpenSSH installed on your phone

    2. WINDOWS: use putty to SSH to your phone, LINUX/OSX: in a terminal enter: ssh root@192.168.x.x (where 192.168.x.x is your iphone's IP Address)

    3. enter: cd /var/root/Library

    4. enter: tar -cv ./filesystem.tar /

    5. SCP the /var/root/Libarary/filesystem.tar file to your computer and untar. The symlinks should now stay intact.
    My Installer Source for themes, wallpapers, and keyboards:

  15. The Following User Says Thank You to chemicalcomfort For This Useful Post:

    quocanh001 (2007-12-07)

  16. #14
    By asking this question, I should probably not even be dreaming of trying something like this, but what language is this? Java?

  17. #15
    Quote Originally Posted by pcguysam View Post
    By asking this question, I should probably not even be dreaming of trying something like this, but what language is this? Java?
    Objective C

  18. The Following User Says Thank You to CyberGreg For This Useful Post:

    pcguysam (2007-12-05)

  19. #16

  20. #17
    Quote Originally Posted by pcguysam View Post
    By asking this question, I should probably not even be dreaming of trying something like this, but what language is this? Java?
    Wait a while and you will probably be able to program UIKit apps in Java (via the JamVM port to iPhone). Java would obviate the casual developers' need to install a toolchain, learn ObjC, etc. It would also allow them to use a good IDE (Netbeans, Eclipse, etc.)

    Java on the iPhone wouldn't use Swing or AWT. Currently, the ObjC classes are all wrapped, but there will probably be another "layer of abstraction" added on top of that to make it resemble (API wise) Swing/AWT.

  21. #18
    any ideas of when a java style developers kit will be available.

    its all i really program in and dont fancy having to learn objective c, having hated normal c when i used it a year ago.

  22. #19
    I've always wanted to try my hand at developing, maybee I'll start trying here, thanks for the SDK!

  23. #20 and produce 2 binary files (seems that way). Are these mac binaries? How do I look at the source? I am on a windows pc.

    Last edited by bigcat; 2008-01-12 at 12:56 AM. Reason: Automerged Doublepost

Page 1 of 2 12 LastLast
Posting Permissions
  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts