Skip to Content

Craig Hockenberry on iPhone SDK and backgrounding

Craig Hockenberry is the man, the myth, and the legend behind the absolute best Twitter application on the Mac (he works for the Iconfactory). We would all love to see Twitterrific on the iPhone, but Craig offers up a "healthy dose of reality" regarding the iPhone SDK and backgrounding services (applications that run in the background even though the phone is running a different foreground app).

In a recent blog post, Craig attempts to explain why Apple will not be giving developers access to backgrounding services on the iPhone. He points out that in a mockup design of "Mobile Twitterrific," based on the jailbreak/community toolchain, refreshing the XML data from Twitter every 5 minutes led to a dead iPhone battery in only 4 hours.

"The heart of the problem [is] the radios. Both the EDGE and Wi-Fi transceivers have significant power requirements," he says. "Whenever that hardware is on, your battery life is going to suck."

He also reiterated what Apple said about the "Core Location" feature that Apple provided in the SDK: use it only on an "as-needed" basis. Craig said that the issue of backgrounding services may get addressed later on, but right now Apple is preventing iPhone developers from "shooting themselves in the foot." He said that it will take months before the desktop developers have gotten the mindset of an iPhone developer, and that thinking like a desktop developer will lead to bad designs.

Categories

Software iPhone

Craig Hockenberry is the man, the myth, and the legend behind the absolute best Twitter application on the Mac (he works for the...
 

Add a Comment

*0 / 3000 Character Maximum

33 Comments

Filter by:
RONALD JARVIS

HAS THE WORLD GONE MAD?! All this stuff is intriguing, but it seems that a fundamental issue is being overlooked. If Apple came out with a car that has a lot of neat features (the iCar?), but would have to be brought into the dealership if you get a flat tire, I guess these same people who buy the iPhone would buy it.
The iPhone is the only mobile phone or PDA I know of which does not have a user-replaceable battery!
Apple says “if your iPhone requires service only because the battery's ability to hold an electrical charge has diminished, Apple will repair your iPhone” for $86 and “The repair process normally takes three business days”. Apple’s ads tout the iPhone as being virtually indispensable and yet this is what they do – not only price-gouge their users but worse than that grossly inconvenience them.
If the battery dies or runs down on my Smartphone, I simply pop in my spare $35 lithium-ion battery. Not only does this mean that I don't have to bring my phone in “for repair" if the battery is no longer good, I've also got back-up in case my battery is simply fully discharged at a time when I may need my phone most (emergencies, etc).
So, folks -- go buy an iCar for which you pay a lot of money but pray you don't get a flat tire in the middle of nowhere! And even if you’re ‘somewhere’, prepare to pay a lot and wait a lot. If the iPhone had a user-replaceable, reasonably priced battery I would own it in a minute.

March 18 2008 at 8:22 AM Report abuse rate up rate down Reply
Nick Caldwell

To all the commentators breaking their arms while patting themselves on the back over the "but Windows Mobile has been doing this for years", please take note: the iPhone hardware platform is significantly more powerful and power-hungry than the vast majority of smart phones out there. The system specs on that thing would have been pretty sweet on a Powerbook about 7 years ago. No wonder Apple is doing all it can to maintain battery life in the face of high demands.

March 18 2008 at 6:01 AM Report abuse rate up rate down Reply
RONALD JARVIS

HAS THE WORLD GONE MAD?! All this stuff is intriguing, but it seems that a fundamental issue is being overlooked. If Apple came out with a car that has a lot of neat features (the iCar?), but would have to be brought into the dealership if you get a flat tire, I guess these same people who buy the iPhone would buy it.

The iPhone is the only mobile phone or PDA I know of which does not have a user-replaceable battery!

Apple says “if your iPhone requires service only because the battery's ability to hold an electrical charge has diminished, Apple will repair your iPhone” for $86 and “The repair process normally takes three business days”. Apple’s ads tout the iPhone as being virtually indispensable and yet this is what they do – not only price-gouge their users but worse than that grossly inconvenience them.

If the battery dies or runs down on my Smartphone, I simply pop in my spare $35 lithium-ion battery. Not only does this mean that I don't have to bring my phone in “for repair" if the battery is no longer good, I've also got back-up in case my battery is simply fully discharged at a time when I may need my phone most (emergencies, etc).

So, folks -- go buy an iCar for which you pay a lot of money but pray you don't get a flat tire in the middle of nowhere! And even if you’re ‘somewhere’, prepare to pay a lot and wait a lot. If the iPhone had a user-replaceable, reasonably priced battery I would own it in a minute.

March 18 2008 at 1:54 AM Report abuse rate up rate down Reply
Ben

He doesn't say it is impossible. He says it didn't work the way he tried it. And there may not be support to do it right in the first release of the SDK.

He says he thinks Apple might add support in the future.

So you can stop saying "but my Blackberry can do it".

March 17 2008 at 1:20 PM Report abuse rate up rate down Reply
1 reply to Ben's comment
KeynoteKen

That's most likely the case. Most of the pieces and parts are there, but the framework as a whole probably still needs a lot of work before they'll be ready to offer it for developer's use.

March 17 2008 at 3:46 PM Report abuse rate up rate down Reply
addi ninja

Well, if thats true active sync is going to kill your iPhone.

March 17 2008 at 1:18 PM Report abuse rate up rate down Reply
1 reply to addi ninja's comment
David Eckert

I must add that using ActiveSync push mail on my Windows Mobile device *severely* impacts battery life. Probably about 3 times the drain. However, I can still go all day on my Sprint Touch (7am to 11pm) and keep about 60%-70% of my battery (I won't even drop a bar with ActiveSync off). I know the iPhone should have a much better battery than my Sprint Touch, so I agree with others that this guys code must be wacky.

March 17 2008 at 2:38 PM Report abuse rate up rate down Reply
Zimmie

I think there may be a much more obvious answer to why Apple doesn't want interpreted code or apps that run in the background. Those things make it hard for Apple to test the applications. Can't be sure an interpreter won't do something bad without a *lot* more testing than Apple is probably willing to put in.

March 17 2008 at 12:59 PM Report abuse rate up rate down Reply
Peteo

Two words SIDE KICK. You have to be kidding me that a 5 your old device can last all day with IM running perfectly fine in the back ground multitasking will all other apps and this guy says his program drained his battery in 4 hours only checking every 5 minutes. I mean seriously this guy must have some screwed up code. I use mobile Scrobbler on my Iphone and it runs a daemon ALL DAY. It never turns off and my battery is fine. Get a clue. If you program right your battery will not be effected that bad. Also with Apple checking every app they should beadle to look at an app and tell the user that it can drain the battery. Let me decide.

March 17 2008 at 12:20 PM Report abuse rate up rate down Reply
jpg

Can someone explain me how Apple will implement push-email without leaving the radio on? By SMS notification followed by pull?

March 17 2008 at 12:02 PM Report abuse rate up rate down Reply
1 reply to jpg's comment
luz

I don't know how they will do it, but yes, notification by SMS would be by far the best solution in terms of efficiency and battery economics.

For open standards like SyncML the SMS notification failed so far for the simple reason that carriers charge too much for SMS (they get poll solutions that require far more network ressources as a "reward").

But Apple might have been able to convince their exclusive carrier partners to allow SMS for the push notification. After all, they also made them implement visual voice mail.

March 17 2008 at 12:28 PM Report abuse rate up rate down Reply
Benson

Apple's not selling a phone; they're selling a beautiful phone experience. If it was just a phone, providing maximum flexibility to devs and users would make sense; but some choices would wreck the experience (by killing battery life or responsiveness of foreground apps), so they can't permit those choices. Only they themselves, or sufficiently trustworthy developers, can be permitted to make tradeoffs that won't appreciably harm the experience.

If choice is what you want, rather than a guaranteed experience, perhaps the iPhone (Apple's way) is not for you. Go with either the iPhone (hackers' way), or some other device entirely.

March 17 2008 at 12:01 PM Report abuse rate up rate down Reply
2 replies to Benson's comment
jtd

The problem, Benson, is that no one is willing to sell a device that is equivalent to a jailbroken iPhone, because doing so would remove American cell phone carriers' ability to use forced scarcity as a business model. When you put the amount of power that something like the iPhone (jailbroken) gives into the hands of regular consumers, they discover that they don't, in fact, have to pay $0.50 to transfer a picture they took from their phone to their computer. They discover that there are ways to send text messages that don't cost them crazy amounts of money. They discover the possibilities that become available when you have no restrictions on what you're "allowed" to do with a network connection.

March 17 2008 at 4:32 PM Report abuse rate up rate down Reply
Benson

Go Irish!

I partially disagree; such devices are sold, measured in terms of power and revenue-threatening capacity. Some S60 phones serve as examples. The iPhone, jailbroken or not, is more accessible and usable, but both S60 devices and jailbroken iPhones are capable of running arbitrary apps.

While the network companies aren't necessarily excited about customer freedom, and ATT does play a role in iPhone decisions, I do think the SDK restrictions are more motivated by the concerns I mmentioned. And Apple is surely aware that a sale's a sale, whether it gets jailbroken or not.

They benefit by segmenting the market; now they can sell iPhones with guaranteed performance to 'normal' people, and also sell iPhones to those who will straightway break them. These folks will knowingly override Apple's protections, so Apple's reputation doesn't suffer when things go wrong. So even if they like having freed iPhones out there (it's more sales!), they have to crack down, both to keep ATT happy and to ensure that jailbreaking is always seen as crossing the Rubicon rather than tacitly permitted, safeguarding the reputation of the pristine iPhone.

March 18 2008 at 1:37 AM Report abuse rate up rate down Reply
tpp

I think everyone of us understands why Apple is doing that, but I still find it totally bogus.

IMHO it would be much better if we (developers and end users) were given a choice. I would be COMPLETELY happy to recharge my phone more often to have the possibility of running some apps in the background.

March 17 2008 at 11:15 AM Report abuse rate up rate down Reply
Buy an ad here

Hot Apps on TUAW

Tweets

© 2012 AOL Inc. All Rights Reserved.