Forgot your password?
typodupeerror
This discussion has been archived. No new comments can be posted.

Multitasking In For iPhone 4.0?

Comments Filter:
  • A minor point... (Score:5, Informative)

    by slagheap (734182) on Thursday March 11, 2010 @03:04PM (#31441750)

    The iPhone OS has always had real pre-emptive multitasking. The phone, email, iPod, calendar, and other applications run all the time and can do things simultaneously.

    Multitasking just hasn't ever been made available to 3rd party developers.

    It has never been a technical limitation in the OS. Rather, Apple kept control over it for battery life and security reasons.

  • by nangus (1026732) on Thursday March 11, 2010 @03:11PM (#31441874)

    Well if multi tasking is implemented as a series of call backs so that any process that is waiting on data is not consuming clock cycles then there should be no more drain when "multitasking" then when running one application. I have never written anything in objective C but with most of my embedded c programming I am able to put any processes that is not doing anything to sleep, so it does not consume extra power.

    As far as I can tell using the backgrounder on my jail broken iphone when not actively working most programs still consume cycles. So almost all of this could be fixed if the wait() call is not properly implemented in the lib.

  • by Anonymous Coward on Thursday March 11, 2010 @03:21PM (#31442046)

    As an iPhone developer, I can tell you this just isn't coming. Apple has lots of (NDA'd) guidelines about how much CPU juice you get (since iPod etc can work through your app) and this would seriously topsy turvey the existing software base. They have gone out of their way to make a UI that works well without multitasking, and stuff like APNS was engineer specifically not to require it.

    Aside from having my SSH sessions die when I want to goto an email or phone call, multi tasking has never actually been lacking.

  • by IDtheTarget (1055608) on Thursday March 11, 2010 @03:24PM (#31442102)

    There are real uses for multitasking, which the iPhone already does - like listening to iPod while surfing or the like. Maybe chat as mentioned, but I also hope to set which apps can be multitasking - I don't trust the developers always to make the correct call - there is no reason to leave a game running in the background while I surf, it would be better to save state.

    Good point. The major reason that I look forward to multi-tasking is that I believe it to be a requirement for true VPN applications. It would be nice to be able to use my iPhone to VPN through our firewall at work so that I can handle emergency systems admin tasks.

  • by Joe Tie. (567096) on Thursday March 11, 2010 @03:34PM (#31442326)
    Backgrounder's probably the single biggest reason I have mine jailbroken. I'm always amazed at the people freaking out like multitasking would cause the thing to explode. People have been multitasking on it for years now. I've had a couple issues with backgrounding and sound, but that's about it. For the most part it's worked great for me.
  • Re:A minor point... (Score:2, Informative)

    by pete-classic (75983) <hutnick@gmail.com> on Thursday March 11, 2010 @03:35PM (#31442344) Homepage Journal

    The Mail app displays a numeric badge and plays a sound (a feature available to all 3rd party apps using the notification API).

    I don't think this is strictly true. I believe that the Mail app is running, and is able to set its badge unilaterally. The 3rd party notification API requires some application NOT running on the phone to notify Apple to send a message to the phone to set the badge on the app, which isn't running. The effect for the end user is largely the same, but the mechanism is radically different.

    -Peter

  • by Brian Feldman (350) <(green) (at) (FreeBSD.org)> on Thursday March 11, 2010 @03:50PM (#31442666)

    Very much incorrect. Most computer programs spend most of their time "sleeping" while they are not actively updating the display, receiving input from somewhere, or actively processing something. This is the standard non-realtime paradigm used for almost two decades in commodity computers. Did you ever notice that your CPU is not running "at 100%" all the time?

  • by Dog-Cow (21281) on Thursday March 11, 2010 @03:52PM (#31442732)

    CPU usage guidelines that the developers don't know about are not guidelines.

  • by Anonymous Coward on Thursday March 11, 2010 @03:55PM (#31442790)

    "I still wouldn't switch from an Android to an iPhone because of the restrictions (and I'm not going to wager hundreds of dollars on a jailbreak), but now I see why people enjoy Apple products."

    The current Jailbreaking method is actually very ease to implement and just as easy to undue.
    Pretty much you download an EXE from blackra1n.com and then run it. Boom Jailbroken.

    To undo the Jailbreak simple do a factory restore on phone from itunes.

    There are more complex ways to do this, but the above method is pretty safe and simple. //cool story bro...

  • Re:A minor point... (Score:4, Informative)

    by strength_of_10_men (967050) on Thursday March 11, 2010 @03:57PM (#31442828)
    The (jailbroken) app "Backgrounder" handles it quite well. It displays a small activity-wheel icon on apps that are currently running in the background. It also does this for the native Apple apps that run in the background. What's so hard about that?
  • Re:Existing Apps? (Score:3, Informative)

    by Dog-Cow (21281) on Thursday March 11, 2010 @03:58PM (#31442844)

    The OS kills any application after 5 seconds that does not end itself when told to quit. It has nothing to do with preventing 2 apps from running at the same time. Rather, it is because there is no provision to switch apps in the UI, so if the app didn't quit quickly, it would appear to hang the phone.

    The only requirement on timing is that state must be saved quickly to avoid data loss when the watchdog kills the process.

  • by whisper_jeff (680366) on Thursday March 11, 2010 @04:04PM (#31442988)

    For some time now, I have been able to listen to music and browse the web, text, chat, etc. by just switching apps.

    Uh, you do know you can do that with a non-jailbroken iPhone, right? You didn't mention anything that a stock iPhone is incapable of doing so, if that's why you jailbroke your iPhone, you wasted your time... If there are other apps that you're running with backgrounder, fine, but that was a bad list of example tasks given the iPhone can do that out of the gate.

  • Re:A minor point... (Score:5, Informative)

    by zullnero (833754) on Thursday March 11, 2010 @04:15PM (#31443220) Homepage
    Actually, if you have a halfways intelligent notification system, that's not a problem at all. My Palm Pre does all that multitasking, and I've never had a phone call interrupted by anything. We've got over 2k apps now for the Pre in about 8-9 months, and I've got a lot of apps running on my phone, and I've never had a phone call interrupted by any app. We get notifications that show up as a little icon on the bottom of the screen, so when the phone call is done, I tap it and deal with it then. Or, I can choose to deal with it during the call if I so choose. In fact, I frequently open up my email while in a call on my Pre, because people call me all the freaking time and ask me if I got that email they sent. Or my calendar. Once, I opened up solitaire during a long conference call and had the call on speaker.
  • by Anonymous Coward on Thursday March 11, 2010 @04:18PM (#31443272)

    Apple's decision to not include multitasking from the start was likely a decision to keep things as simple as possible. Now they're playing catch-up and tacking on multi-tasking to a system that was built from the ground-up without it. I don't understand how this will not break app compatibility. Existing apps only understand certain "states." Multitasking will introduce new application states that existing apps will not know how to handle. I am very interested in how they plan to reconcile this.

    iPhone OS is Unix. It's had multitasking built in from day one!

  • Re:Would be Great (Score:2, Informative)

    by ReverendJ1 (1703482) on Thursday March 11, 2010 @04:21PM (#31443342)
    With Android you can look at exactly how much of your battery has been used by which apps. This is built in and you can look at it whenever you want. Whenever the battery life gets to 15% it will tell you to start charging it and ask if you want to see this report.
  • by Anonymous Coward on Thursday March 11, 2010 @05:28PM (#31444660)

    ..except for the phone and iPod app which has had multitasking since launch.

    I have jailbreakon my iPhone and installed "backgrounder" which allows any app to run in the background. Works great. The icon of an app gets a small circle to indicate that it is running in the background.

    I do understand why Apple have blocked this functionality to developers since it drains battery.

  • by TodLiebeck (633704) on Thursday March 11, 2010 @06:10PM (#31445288) Homepage

    I can't stand hearing everyone talk about multitasking on things like Android devices as though it works the same way as it does on their desktop PC. Nothing could be further from the truth.

    The first form of multitasking on Android is that applications can elect to receive messages, e.g. "someone is calling", or "wifi state changed".

    If you actually need to do constant work in the background (e.g., listening on a network port), you can do so as well, using a "service". And even services will be killed by the system if resources are needed.

    No one is talking about running a Handbrake encode session, Firefox with a bunch of animated Flash ads, and a kernel compile at the same time on their phone.

    Multitasking on a phone is being able to record breadcrumbs of a journey with a GPS app, listen to streaming internet radio, and receive notifications from an instant messaging client at the same time.

  • by Wovel (964431) on Thursday March 11, 2010 @08:09PM (#31446870) Homepage

    While I think that is true of every other smart phone on the Market, based on mobile browser statistics, the iPhone is the exception.

  • by uberjack (1311219) * on Thursday March 11, 2010 @08:53PM (#31447300)
    As a dedicated Android user (and programmer), I still don't see the value of multitasking in a mobile app. The runtime can automatically clean up and restart the application with all the state information necessary if it ceases to run anyway. It's a lot easier to just assume that it's _always_ going to be cleaned up upon suspension, instead of writing code that accounts for the possibility that the app just may be resuming from a paused, but not terminated state. I haven't used a single Android app, or written any code that I can say honestly benefits from the multitasking aspects of Android. The runtime can shut down my app any time it sees fit. Planning for resumption from an abruptly terminated app is the norm when developing for Android anyway. The way I see it, the apps would have more resources if the platform didn't have to multitask.
  • Re:A minor point... (Score:4, Informative)

    by hazydave (96747) on Friday March 12, 2010 @04:44AM (#31449452)

    Already being on Verizon, the Droid cost me an additional $30/month over the cost of service for a non-smart phone. It's a family plan.. we have four phones on for slightly over $100 per month. The general prices between AT&T and Verizon aren't significantly different... one may be better or worse, depending on the specifics of what you want. The data plan, at least for individuals, is the same... "unlimited" data for smart phones (where "unlimited" in both cases is subject to arbitrary definitions, both companies will go after you if you're using more data than they think possible under their license... like tethering)

    As for coverage, the entire Verizon network is 3G, only about 20% of AT&T's (by area, not by population) is 3G. That's nothing more than the difference between CDMA and GSM... the CDMA 3G protocols run over the same frequencies and bandwidth used for 2G/Voice, while GSM always requires additional bandwidth, and often, additional frequencies. This is further compounded by today's AT&T being a mix of two previous companies, Cingular and AT&T Mobility. Cingular bought AT&T Mobility to become the country's second largest cellular network, after Verizon. But AT&T Mobility was using DAMPS (they called it "TDMA"), not GSM. So the company has spent many years just establishing full 2G GSM coverage and phasing out DAMPS (the DAMPS network went dark in mid 2008). This is also why AT&T's slightly more likely to drop calls than other GSM networks... DAMPS has slightly better coverage than GSM, so upgraded DAMPS cells are often not ideally placed for GSM.

    At its peak, the AT&T network is faster than Verizon's. Regular HSPA cells deliver up to 3.6Mb/s down to clients, versus 3.1Mb/s down to clients for CDMA's EvDO Rev A. By this summer, AT&T will have HSPA+ coverage in as many as 40 cities, which can deliver 7.2Mb/s down to clients, if you have a fast enough phone (you'll need an iPhone 3GS for this, and the iPhones are all still crippled on the upload side... HSPA+ can go upstream at up to 2Mb/s, but iPhones only do 384kb/s). All networks degrade over distance, and all fall back to "EDGE" speeds if you're too far from a cell site for 3G performance. AT&T and Verizon both have an advantage in range, though, generally being the companies owning one of the two 850MHz slots available in any area of the USA. You get much better range at 850MHz than at 1900MHz... Sprint does its 3G at 1900MHz (and WiMax 4G at 2500MHz, though they don't have any 4G phones out yet), T-Mobile does 2G at 1900MHz and 3G split between 1700MHz and 2100MHz. Verizon is starting 4G service at 700MHz this summer, using the LTE standard; AT&T will be starting 4G next year, also at 700MHz (Verizon won the largest 700MHz spectrum block, 20MHz of spectrum, while AT&T got the other big win here, 12MHz worth of spectrum).

There is no royal road to geometry. -- Euclid

Working...