Guide to iPhone applications (official and jailbreak”)

Official applications

Apple has shipped an official software development kit (SDK) for the iPhone, and will released an iPhone 2.0 update in June that will allow official applications to be purchased wirelessly through the “App Store” (free applications will also be available). Full coverage:

Jailbreak applications

These unofficial applications aren’t supported by Apple and require “jailbreaking” the iPhone (enabling full read/write filesystem access). They run the gamut, including some entertaining games, various dictionaries and eBooks, streaming radio tools, a voice recorder, instant messaging/IRC clients, a quasi-GPS program and more.

Enabling the applications (jailbreaking and more)

The first step for putting third-party applications on your iPhone is to determine what firmware/software version you are running. To do this, go to the main screen and tap Settings, then General then About. Look next to Version. You will see either 1.0.0, 1.0.1, 1.0.2, 1.1.1, 1.1.2, 1.1.3 or 1.1.4.

Once you’ve determined your firmware version, use one of the following procedures, which all have the same end result: “jailbreaking” the device (allowing files to be written to the filesystem) and installing Installer.app. Installer.app (which shows up as simply “Installer” on the iPhone) is an iPhone application itself that catalogs and installs other iPhone binaries.

  • 1.1.4

    On a Mac:

    Download the file listed here, expand it, launch it, connect your iPhone and follow the on-screen instructions. The application also includes an unlock mechanism.

    On a Windows system

    1. Download the file linked here
    2. Downgrade to iTunes 7.4.2. Download iTunes 7.4.2) then install it and restart (this step may not be necessary).
    3. Follow the on-screen instructions.

    After it’s done, you should launch Installer.app (from your iPhone’s main screen) and tap Install at the bottom of the screen, then tap the Sources section and install Community Sources. This will provide a much larger array of accessible applications. You’ll also want to install BSD Subsystem under “System” and OpenSSH (also under “System”) right away. See the section “Getting to know Installer.app” below for further instruction.

    If you’re using iPhone software/firmware 1.1.3, you’ll also need to install two
    fixes to repair some terminal problems due to the 1.1.3 upgrade. The first is
    called BSD Subsystem 2.0 Termfix, and is found under “Tweaks,” the second is SUID Lib Fix and is found under Tweaks 1.1.3. After installing these items, you will be able SSH into your iPhone, and access the file system.

  • 1.1.3

    On a Mac:

    Download this file, expand it, launch it, connect your iPhone and follow the on-screen instructions. The application also includes an unlock mechanism.

    On a Windows system

    1. Download this file
    2. Downgrade to iTunes 7.4.2. Download iTunes 7.4.2) then install it and restart (this step may not be necessary).
    3. Follow the on-screen instructions.

    After it’s done, you should launch Installer.app (from your iPhone’s main screen) and tap Install at the bottom of the screen, then tap the Sources section and install Community Sources. This will provide a much larger array of accessible applications. You’ll also want to install BSD Subsystem under “System” and OpenSSH (also under “System”) right away. See the section “Getting to know Installer.app” below for further instruction.

    If you’re using iPhone software/firmware 1.1.3, you’ll also need to install two
    fixes to repair some terminal problems due to the 1.1.3 upgrade. The first is
    called BSD Subsystem 2.0 Termfix, and is found under “Tweaks,” the second is SUID Lib Fix and is found under Tweaks 1.1.3. After installing these items, you will be able SSH into your iPhone, and access the file system.

  • 1.1.2 Jailbreaking iPhone firmware/software 1.1.2 is somewhat difficult. If your iPhone didn’t come with 1.1.2 out-of-the box and you haven’t yet upgraded, we recommend sticking with version 1.1.1 if you’d like to use third-party applications. However, if you’ve already updated to 1.1.2, there’s not an easy way to go back to version 1.1.1 and keep your phone active for voice services.

    There are two methods for jailbreaking 1.1.2 phones. The first (described here) is a uniform, platform-agnostic process that doesn’t require the use of any third-party utilities other than what is included in a single download package from Conceited Software. Try it first.

    If that method fails, there is another process (described here) that is even more tedious and requires the use of the third-party utility iNdependence. Try it if the first one fails.

    These procedures, if performed correctly, will jailbreak the iPhone, install Installer.app, put SSH capablities on the device, and enable a hidden feature (built into the iPhone) that allows you to swipe across the main launching screen (SpringBoard) to access more application icons.

    After it’s done, you should launch Installer.app (from your iPhone’s main screen) and tap Install at the bottom of the screen, then tap the Sources section and install Community Sources. This will provide a much larger array of accessible applications. You’ll also want to install BSD Subsystem under “System” and OpenSSH (also under “System”) right away. See the section “Getting to know Installer.app” below for further instruction.

  • 1.1.1 If you’re using firmware version 1.1.1, you’re in luck. Jailbreaking this iteration is a one-step process. On your iPhone, launch Safari, then navigate to http://www.jailbreakme.com. This will automatically jailbreak and put Installer.app on the device.

    This process will jailbreak the iPhone, install Installer.app and enable a hidden feature (built into the iPhone) that allows you to swipe across the main launching screen (SpringBoard) to access more application icons.

    After it’s done, you should launch Installer.app (from your iPhone’s main screen) and tap Install at the bottom of the screen, then tap the Sources section and install Community Sources. This will provide a much larger array of accessible applications. You’ll also want to install BSD Subsystem and Open SSH under “System” right away. See the section “Using Installer.app” below for further instruction.

  • 1.0, 1.0.1 or 1.0.2 If you are using iPhone Software/Firmware 1.0.2 or earlier you can directly install Installer.app, which is now accompanied by a GUI-based Mac OS X application and a similar Windows application — available from this page — that will literally do everything for you. Just download an launch the application, select your iPhone firmware version, and let it do its thing. In short order, you will have the Installer icon on your iPhone’s home screen.

    Once you have Installer.app on your 1.0, 1.0.1 or 1.0.2 iPhone, there are a few things you’ll want to do immediately:

    • Tap Update and check if there is a new release of Installer.app available. If one is listed, tap it, then tap the Update button to make sure you are running the latest version.
    • Tap Install, then tap Community Sources and install it. This will dramatically increase the number of applications available for download and installation through Installer.app
    • Install SummerBoad if using 1.0.2 [Note that SummerBoard is not compatible with iPhone Software/Firmware 1.1.1 or later, and not necessary, as there is a different app launching mechanism on the iPhone], listed under System — it’s important that you do this as before installing other applications. SummerBoard will replace “SpringBoard,” which is what you see when you push the home button, and allow you to scroll through an unlimited number of apps — a major point since the iPhone’s home screen is limited to sixteen icons, meaning that you won’t, by default, be able to access more than four third-party applications. As such, SummerBoard should be the first third-party application aside from Installer.app and Community Sources you install, as it will appear on your home screen and allow access to other apps.
    • You’ll also want to install BSD Subsystem and Open SSH under “System” right away.

    See the section “Using Installer.app” below for further instruction.

Using Installer.app

Installer.app is the result, primarily, of efforts from Maksim Rogov at Nullriver Software. It offers a slick interface for downloading iPhone applications over and EDGE or WiFi connection directly to the device itself. Here’s what you need to know about using Installer:

Installing applications A very straightforward process. Tap the Installer icon to launch the program, then tap the “Install” button on the bottom of the interface. Applications are organized by category, and accessed through a familiar sliding-style interface. Once you’ve found the package you want, tap its name then tap the “Install” button in the upper-right corner. As soon as you quit Installer.app, the new application should appear on your SpringBoard. You might, however, need to restart your iPhone for full functionality in some cases.

Uninstalling applications Just tap “Uninstall” in Installer.app and you can remove any applications stored on your iPhone, except those any that you manually transferred to the device via an SSH session.

Adding sources Application repositories can be easily added to Installer.app. These sources allow applications outside the default set of community sources offered by Installer.app to be pushed through the application (see this article for an example; ScummVM, a game framework for the iPhone, also requires the addition of a new source).

To add a source, tap “Sources,” button, then tap “Edit” in the upper-right corner, and finally “Add” in the upper-left corner. Enter the URL of the source you would like to add and press “OK.” Installer.app will add the source, and you will be able to find the new application(s) in the normal “Install” menu.

Manually installing applications on the iPhone If a community source isn’t available for the application you’d like to install, there is a manual process for pushing applications. This process uses the Mac OS X Terminal, but the steps can be replicated for any SSH/SCP utility.

  • Download a binary for the iPhone
  • Open a command-line interface (such as the Terminal in Mac OS X) and type scp -r then a space.
  • Drag the application you downloaded to the Terminal window.
  • Type another space, then root@IPAddress:/Applications/ (replacing IPAddress with your iPhone’s IP Address). When you’re done, your Terminal command should look something like this: scp -r /Users/bwilson/Desktop/Lights\ Off.app/ root@10.10.10.10:/Applications/ (that’s a fake IP address, by the way)
  • Restart your iPhone: Hold down the sleep/wake button until you see the slider, then slide it off. Power it back on by briefly holding the sleep/wake button

What to do if your iPhone becomes unstable or you want to delete all hacks

If your iPhone starts becoming unstable or exhibiting strange behavior as a result of third-party application installation, you can easily bring it back to normal operating mode by performing a restore. Click the Restore button under the Summary tab. Restoring the phone will erase contacts, calendars, photos and other data on the phone, but will restore automatically backed-up information including text messages, notes, call history, contact favorites, sound settings, widget settings, etc. If things go terribly wrong and your iPhone refuses to restore, see our piece titled “How ‘Recovery Mode’ can rescue your iPhone.”

Useful applications

Now that your iPhone is primed to receive and make use of third-party binaries, let’s take a look at what is available. Unfortunately, many of the current binaries still fall into the purely demonstrative category or are of little use. A select few, however, enhance the functionality of the iPhone in meaningful ways. Make sure you’ve installed Community Sources as mentioned above, then check out these apps:

Apollo IM/Mobile Chat: native instant messaging clients Apollo IM support AOL instant messaging (AIM) as well as ICQ and MSN, Mobile Chat currently supports only AIM. Both still contain a few bugs, but are much more usable than any Web-based alternative.

Navizon — quasi-GPS on steroids One-upping the Location feature offered by Google Maps in iPhone software/firmware 1.1.3, the unofficial third-party application Navizon now includes a feature called “moving mode” that will update your location every 10 seconds, providing an even closer emulation of real GPS units. In the words of the developer “That way, you don’t have to keep pressing on the ‘LocateMe’ button like a maniac.” Navizon is a GPS-like tool that (like 1.1.3’s Location feature) uses cell tower and WiFi triangulation to estimate user location.

In order to install Navizon, navigate to the Network category in Installer and select Navizon. You may need to add the following repository: http://repo.navizon.com in your Installer sources. Within Installer, tap “Sources” then “Edit” and add the aforementioned URL. A Navizon official told iPhone Atlas “If you go in All Packages, you should see 2 versions of Navizon: the new one is version 2.0.0.”

iSMS — send text messages to multiple recipients One of the most commonly requested features not available by default on the iPhone is the ability to send text messages (SMS) to multiple recipients. Thanks to a new third-party native application created by Shawn Chain, you can now do just that. Dubbed iSMS, the new application also allows you to view messages by category (Inbox, Sent, Draft) and search text messages directly on the iPhone.

Native VNC (remote Mac/PC control) VNC on the iPhone is a thing of beauty, allowing you to view the screen of and control your Mac or PC. Unfortunately, solutions up to this point have been clunky: Web-based monstrosities that respond poorly even on a fast WiFi connection or native applications that are error-prone when attempting to scroll around the screen or perform any worthwhile control. Now VNSea, a native iPhone VNC client extant for some time, has matured to the point where it is usable.

Games

  • iBlackJack All you need to know about this game, aside from it being blackjack, are: double-tap to hit, swipe down to double down, swipe right to stand. It works like a charm, and has some of the most polished graphics we’ve seen yet in any native iPhone application. If only this game were linked to an online gambling site; we could be losing hundreds from anywhere!
  • ContraSense All you need to know about this game: It’s Spy Hunter, and you tilt the iPhone to steer. This title, though very simple, gets kudos for its excellent use of the accelerometer and genuinely fun gameplay.

MobileFinder Under “Utilities” in Installer.app, this is a Mac OS X Finder for your iPhone! Sort of. This application will let you browse files on your iPhone, and launch applications by double-tapping them. It also lets you copy, paste and delete items, as well as create new files and folders. This program shows a lot of promise, and while it has a few kinks, we imagine it’s utility will prove invaluable as things develop.

VNotes Under “Multimedia” in Installer.app, this is a basic voice recorder for the iPhone. Record through the mic, playback through the speaker. Recordings are tagged by date and time, and can be deleted by tapping the Edit button.

MobileTerminal Under “System” in Installer.app, a Terminal for your iPhone. Useful for browsing files through the command line, launching scripts that make use of runtime environments (see below), and much more.

Runtime environments There are already Perl, Python and Ruby runtime environments for the iPhone that can be used to execute scripts written in these languages from the MobileTerminal. We’re still searching for useful applications, so please drop us a line if you’ve found one.

Feedback? info@iphoneatlas.com.

[ Digg this  |  Bookmark on del.icio.us ]