alexwhittemore.com //Blog

11Jan/10133

Developing for a Jailbroken iPhone A to Z (iPhone 3.1.2)

Debugging on device. Freaking finally.

Debugging on device. Freaking finally.

UPDATE: There's a new method for iOS4 but they're pretty similar anyway.

So it's been a while, but now that I'm on break again and have some time, I'm doing a bit of iPhone development again. That means I'm going to need to debug on-device (or at least load my app to it to have fun in the real world with my handiwork). This time, the procedure's a little different though.

Vital stats:
iPhone OS 3.1.2
Xcode version 3.2.1, 64 bit
Mac OSX 10.6.2 Snow Leopard

Let's do it.

UPDATE: Corrected a problem with the run script build phase: corrected the directory names for the new version and copied the new phase that doesn't include "resource_rules.plist."

UPDATE 2: Somehow I forgot the add an identity step. It's now #1 below. Sorry guys. Also, while this whole thing should apply to iPhoneOS 4, I'm going to officially text it/repost with 4.01 soon.

20Jun/096

Jailbroken OS 3.0 is a Buggy Ass Piece of Shit

crashyI hate to have to report this, but it's just sad how crappy the current experience is on 3.0-JB. In some order:

  • Cydia crashes like crashing is its job. Tap search then manage - boom, crash. Uninstall an app - 50% likely crash. click too many items in a row because cydia is slow but you know your way around - crash. In fact, you can really just imagine crashing for a split second, and it will happen, wherever you are. Restoring my phone to its previous state of installed apps was failing so badly that I installed apt and did it from an SSH session. Only to find out that Aptitude is broken. At least there is apt-get, too. But alas, I still didn't get very far, since NONE of the apps I previously had work. Starting, most obviously, with Backgrounder.
  • Backgrounder is (temporarily) dead. This isn't that critical, per se, since apps usually crash while in the background anyway, but I'm annoyed not to have it because at least Pandora would reliably stay alive while you emailed or, to a lesser extent, texted. Now, no matter which method you use to invoke Backgrounder, the invocation tanks MobileSubstrate and sends it into safe mode. Bummer. And Pandora Controls was a nice pairing for backgrounder since you could use it to control Pandora from other apps just like the iPod. Kind of a moot point, if backgrounder is dead, but
  • Pandora Controls just doesn't work, at all. Worse, it causes Pandora to crash on launch. Yay safe mode. Don't install it.
  • I could probably survive in the time being before repairs to the above by using one of my FAVORITE iPod apps, Instinctiv Shuffle. It is basically a smart shuffle hooked into the iPod app that attempts to shuffle your full library based on your mood, and it seems to work pretty well. It pretty much just makes shuffle less random, playing similar songs to the ones you recently didn't-skip, but it's a nice addition for the car. But it doesn't install on 3.0. Boo.
  • hClipboard straight doesn't work. Yeah, there's official copy/paste now, but I liked the templates feature, not having to re-enter email addresses all the time. And I liked a multiple-entry clipboard. And iKeyEx had other cool features.
  • ICY is cool, but also buggy: So far, I've found that you can reliably crash it by cancelling an app install.

And then there are a ton of other stupid issues. Like what's up with this screenshot?

What the hell.

What the hell.

There's no text entry field there, guys. And in general, things seem slower (though some faster). Overall, this could be going better.

All I can say is thank god PdaNet works, since AT&T will inevitably break the official tethering channel. I will admit, the iPhone interface for it is cooler and less goofy, but it also doesn't work (for me, won't connect). And when it does, you'll get charged out the ass for it, which is key too.

9Jun/090

iPhone OS 3.0 Gold Masters Relased

Get them while they're hot! http://www.iphone3g-mods.com/ (coral) has a great list of download links for all the various hardware versions. There are a couple of notes: First, this is intended for developers only. As such, these FW versions lock your phone into "testing mode," meaning you can't then downgrade to an old version. Also, this final pre-release is not jailbroken (rather, it probably is, but the JB is as of yet unreleased). So don't plan to use this on your main device if, like me, you rely on your jailbreak. I'll probably only install this on my iTouch 1G, and wait for a proper jailbreak following the official release.

3May/0913

iTunes Carrier Update Error – Fix

I've been having this really annoying error lately ever since that carrier update that Apple released to add support for AT&T's new microcells. The exact message is this:

25Jan/091

My New Favorite App – TwitterFon

TwitterFon Timeline View

TwitterFon Timeline View

Here's a goodie for all of you who don't want to jailbreak your phone. Not that I know why you'd want that, and not that anyone like that reads this blog, but hey. it's totally cool regardless. If you have an iPhone, and you use Twitter, you flat out owe it to yourself to try out TwitterFon (coral). First of all, it's free. Better than that, it's open source. Rock on! Second, it's very well featured, even having a companion bookmarklet for Safari to send the current URL to a new tweet. It can post pictures to TwitPic, as well as update your current Twitter location with your coordinates. More impressive, however, is how it handles the basic functionalities of Twitter. In your main feed, you can click a post on an arrow appearing if it has links, getting a menu of those links (webpages viewable in-app, or you can click a button to open in Safari, # and @ links also clickable in-app). If you click a post on the body, you get a menu specific to that post - you can view the author's feed/profile, retweet the post, mark it as favorite for later viewing, and so on.

25Jan/094

New iPhone Keyboard Interface Library: iKeyEx (And A New Copy/Paste to Boot!)

Turning an area into a copyable field.

Turning an area into a copyable field.

I know I promised a technical article on how to find arbitrary bundle identifiers, but the news moves fast, and I'm already behind the times on this one. There's a new Copy/Paste mechanism out for the iPhone, hClipboard, but there's way more to it than that, and a LOT of new possibilities come with it. Most people have been reporting on how cool hClipboard is, and it's no lie that it's super cool, but even cooler is the work that went into its backend. Over at networkpx (coral), KennyTM has been hard at work cracking the entire keyboard system of the iPhone WIDE open. Basically, the kingpin of the system is iKeyEx, which is a library based on mobilesubstrate to write new keyboards or keyboard extensions for the phone. It essentially allows developers to produce new keyboards that can be turned on and off in the normal keyboard settings of settings.app.

20Jan/090

Holy Crap, iPhone Gets Real Copy and Paste (For Real This Time)

OMG, Magic

OMG, Magic

I was half asleep, but I had to wake up for this one. At long last, a REAL implementation of copy/paste on the iPhone. It works in every text field. It's stupid that I'm actually saying this, you'd think copy and paste was a brand new invention, but I'm actually dumbfounded, wallowing in my own joy. It's called "Clippy" (Yes, like the dreaded MS Office character) and it's brought to us by iSpazio and Ryan Petrich. It's jailbreak only, as all good things are, but here's the procedure: Open Cydia, install "Clippy-Beta." It couldn't be easier. It's somewhat buggy - for example, in sms, you can't actually SEE what you're copying/pasting, and the button to return to the main view doesn't work properly (you have to aim for the bottom left, or the button press does't work). And it gums up your number keypad. But for copy/paste, I'd do all sorts of things far less desirable than those.

This just changed the "Reasons to jailbreak your iPhone" column into "Reasons you're dumb as bricks if you don't jailbreak your iPhone."

The magic lies here (coral).

UPDATE 6:30am 1/20/09: Lets make a list of bugs, shall we? Add any you notice in the comments and I'll include them. Here's my list after the break:

19Jan/0910

Ustream Viewer Added to App Store

A few days after the public announcement of a Ustream viewer application for the iPhone/iPod Touch, the app has gone live in the App Store! Get it while it's hot for some live-streaming-inauguration-action! UPDATE!: The app has been crippled by ATT to disallow 3G streaming, but if you're jailbroken (or can make it so asap), there's a fix below that should work for you too.

Ustream Live in App Store

Ustream Live in App Store

UPDATE 11:20p 1/19/09: Unfortunately, it appears that this app is crippled: you can only watch streaming videos on a WIFI connection, which basically makes it useless, since if you have WIFI, you're probably capible of using a computer. Maybe not, but my plan was to watch the inauguration while going about my daily activities, so I'm working feverishly on a workaround. It's not hard to do, provided the crippling is an app store thing and not a 'we need wifi bandwidth, the videos won't stream on anything less' thing. If it's the former, expect a fix in a matter of minutes.

UPDATE2 12:02am 1/20/09: It is done! I'm successfully watching live streaming Ustream video on my iphone. Here's how (after the break).

1Jan/090

iPhone 3G Software Unlock “Yellowsn0w” Released

Here's the gyst:

  1. The unlock now ONLY works on baseband 02.28.00. That is, the baseband that comes with the standard iPhone OS 2.2 update.
  2. The unlock is a daemon. That means it runs in the background and, every time your phone restarts, it re-injects the unlock code. It's not persistent - as soon as your phone becomes un-jailbroken (an update, for example) it will go away. Watch out.
  3. The unlock program installs via Cydia, NOT any of the jailbreak tools.

How to get it:

21Dec/080

iPhone 3G Unlock – See It For Yourself

iPhoneDevTeam member MuscleNerd demonstrates the new iPhone 3G software unlock that the team will be releasing new years eve. See the video on his Qik page here, or watch below.