iPhone OS 4.0 Brings Multitasking, Ad Framework For Apps
Low Ranked Craig writes "Apple had an event today to show off the next major update to the iPhone OS. iPhone OS 4.0 should arrive this summer (presumably with a new iPhone) for iPhone and iPod Touch, and in the fall for the iPad. According to Apple the update has more than 1,500 new APIs and 100 new features including the sorely missed multitasking. Other highlights include unified inbox, improved security, support for multiple Exchange accounts, application folders, iBooks, and iAd, an advertising framework for developers to put ads in their applications. The official word from Steve on Flash and Java remains a simple 'No.'" Updated 20100408 22:09 GMT by timothy: Read on for more information, including some bad news if you want to program for the iPhone in C# or Flash CS5.
alphadogg points out some what he calls surprise capabilities targeted at enterprise users and IT departments, including e-mail encryption and "mobile device management."
And CWmike adds more infomation at MacWorld about iAd, which he considers the biggest news in today’s announcement, writing that one way to look at the new advertising hooks "is that Apple can now leverage the App Store/iTunes ‘ecosystem’ lock-in in effect, and deliver to advertisers a huge captive audience."
Finally, binarylarry writes with a look from Daring Fireball at the new user agreement that goes along with 4.0: "Looks like Adobe's release of CS5 with the Flash-to-native compiler has been nixed by Apple's new user agreement: '3.3.1 — Applications may only use Documented APIs in the manner prescribed by Apple and must not use or call any private APIs.'"
And CWmike adds more infomation at MacWorld about iAd, which he considers the biggest news in today’s announcement, writing that one way to look at the new advertising hooks "is that Apple can now leverage the App Store/iTunes ‘ecosystem’ lock-in in effect, and deliver to advertisers a huge captive audience."
Finally, binarylarry writes with a look from Daring Fireball at the new user agreement that goes along with 4.0: "Looks like Adobe's release of CS5 with the Flash-to-native compiler has been nixed by Apple's new user agreement: '3.3.1 — Applications may only use Documented APIs in the manner prescribed by Apple and must not use or call any private APIs.'"
Ads on mobile phone? DO NOT WANT. Unless I get a free phone and free service, but even then I'm not sure if I could tolerate it.
Slashdot: Failed Car Analogies. Amateur Lawyering. Anecdote Battles.
Good to know Apple has their priorities right.
"Have you ever thought about just turning off the TV, sitting down with your kids, and hitting them?"
Wait a second here. Wasn't the lack of multitasking a feature that made the iPad and iPhone so great? It allowed you to relax and compute!
What are they doing? Why is Apple taking all of the zen out?
If moderation could change anything, it would be illegal.
Couple things:
The multitasking method described is essentially identical to the one MS is using, with the process being halted in the background and the potential for it to be freed from memory at any time. The new addition is a background daemon or two that a program can contact to leave bits running while the rest is halted. Sort of a "low power multitasking." This is actually quite clever, and makes me wonder if it isn't using Grand Central closures to keep those bits spinning while the main process is halted.
The task switching method has apparently been cited as looking extremely similar to the way S60 switches. I wouldn't know, but that's pretty funny if true.
All in all, the critical juncture remains for me: The platform has been and will remain extremely closed. That alone is enough to ensure that I will stick with my N900 for the time being, and likely well into the future. I'll put my OS and developer interests behind MeeGo, and encourage openness.
It's their store. If you don't like it, don't buy their device. Or jailbreak it.
I was considering getting an ***LOW INTEREST MORTAGES*** Iphone, but this new ad framework might ***ALL-NATURAL COLONIC CLEANSE*** force me to reconsider. Will ads only be shown when ad-supported apps are running, or ***HOT SLASHDOTTERS WANT TO TALK TO YOU!!!*** will you be interrupted with ads no matter where you are?
Now if only iPhone owners could do what they want with the hardware they purchased.
Time is what keeps everything from happening all at once.
Because you want to be able to look something up (through your browser, in your mailbox, whatever) while having a conversation on Skype.
Pretty good is actually pretty bad.
A good reason for the OS to support multitasking: Assume you hit 'upload' in your favorite application and now want to do something else while the data is slowly streaming out to the server. This allows you to move on to do something else.
You aren't the one multitasking though because, from your perspective, you're done with that previous task. This lets the application/OS do the multitasking that allows you to move on and do something else. Apple would argue this "good" vs making you think about it as a new task: "I want this upload to complete so I'll run this application in the background while I do something else then I'll come back and close this application when it is done". In the latter case you truly are doing the multitasking.
So now you have iPhone developers having to worry about which hardware they are running on:
* Older OSes that can't multi-task versus newer iPhone hardware
* Larger screen sizes on the piece of junk iPad versus the tiny iPhone screen rez
Isn't 'fragmentation' the latest talking point for Apple and Apple fans in the media after the 'teh most apps' failed to have any effect on slowing down the massive Android surge?
I can't wait to see how many annoying (but non-flash) ads full of animation and video can do to get me right up to my 5GB data limit every month.
What are we going to do tonight Brain?
Interestingly enough nobody seems to have mentioned this gem yet. To summarize, Apple has decided to forbid
While this is clearly aimed squarely at Adobe and their Flash compiler I can't help wondering what does it mean even for C++ libraries such as Qt or wxWidgets (that I'm personally most interested in) as, with a bit of bad faith (that Apple doesn't seem to luck), they could be construed to be "intermediary compatibility layers" too. And this definitely seems to exclude using Perl, Python, Ruby or anything else.
If anybody had any doubts about Apple openness, this should hopefully be enough to dispel them (although whom am I kidding... there will surely be people able to justify this as well).
True multi-tasking isn't coming to the iPhone. The multi-tasking will be limited. If it falls under 7 different categories it will be supported.
Apple has always been against mult-tasking because they claim it hampers performance and drains the battery. As a Window Mobile user, I can't count the number of times my phone was freaking sluggish only to find that certain apps were running in the background that didn't kill themselves properly. With this Apple will allow certain types of behavior. Most of the multi-tasking that most consumers have wanted falls under one of these categories. Now if you're trying to sequence a genome while twittering your friends, that's probably not supported.
Well, there's spam egg sausage and spam, that's not got much spam in it.
Mac OS 9 and earlier only had "co operative" multitasking and Mac zealots of the day used to proclaim it was better than "true" multitasking and came up with all sorts of rationales for it, until OS X came along of course. So history is repeating itself and Apple is bringing back their "it's better because it's worse" philosophy of the 90's. LOL.
I shouldn't have to literally break the law to make my phone run and work how I, the USER, want it to.
You, the USER, didn't buy an open source phone. You bought a phone with a specified platform and method of operation. Maybe you should back the bus up and ask why you, the USER, bought a phone you didn't like.
Will it let you install your own applications on it however you like? No? Well it's still an essentially useless toy then.
Not everybody wants a SSH console on their mobile phone.
.. and that's the only thing multi-tasking is useful for, right?
Sorry, what was your point?
"Our two-party system is like a bowl of shit looking at itself in a mirror." - Lewis Black
The three-hour battery life part or the going bankrupt by catering to whims of tech forum trolls part?
Don't blame me, I voted for Baltar.
I'm with you. I bought a 2G iPhone years ago because it was the only smartphone with a user experience I considered to be acceptable. When they launched the app store, I expected openness, but was sorely disappointed. I've been waiting ever since for Android to catch up and in my opinion it finally has. I'm going to switch to Android some time this summer. Currently exploring my options. The HTC Desire looks like the best so far.
You're right, I wouldn't steal a car. But if it were possible, I sure as hell would download one!
Android has already had this since the G1
AS well as a bunch of features the iPhone is just now getting, and a bunch it doesn't have.
The Kruger Dunning explains most post on
As opposed to the iPhone, where you have your choice of fart apps, or clones of crayon physics games.
--Obyron
Currently, developers use the in-application ads to monetize free applications. This means that the only people who will see those apps are freeloaders who don't want to pay $0.99 for the full version of the app. Those folks won't tap on the ads, and even if they do, they won't buy stuff. Epic fail.
Damn, that's only 500 times as much RAM as an Amiga 1000. No way anyone can multitask in that!
Let's not get too cynical. I watch hulu for a few hours on a dual core desktop computer and the video becomes sluggish. Imaging flash hugging the cpu during a 911 call.
Sure, lots of older computers had far less than 128 MB of RAM and did real multitasking. The issue is whether iphone OS and its apps on the earlier generations of hardware work well enough. You can bet they tested its performance. I suspect they found it quite lacking due to RAM and decided to disable multitasking rather than allow it and have it run poorly. More cynical people would say they're doing it to encourage upgrades.
"The universe seems neither benign nor hostile, merely indifferent." --Carl Sagan
I'll be dumping iPhone as soon as my current jailbroken 3GS is considered obsolete. I shouldn't have to literally break the law to make my phone run and work how I, the USER, want it to.
No, clearly you purchased the wrong phone for what you need, and have some serious buyers remorse. Sort of like buying a minivan then wondering why it can't go fast enough to win any street races, if car analogies are your thing.
I bought a 3GS last summer after it was released as well. It does everything that it advertised it was supposed to do, nothing more, nothing less. Since I bought it wanting those features, I am very happy with my purchase.
No one is forcing you to break the law to make the phone run the way you think it should, rather you have to break the law because you failed to read the standard set of features/benefits that they 3GS had at the time of release. It's not like they kept what it could and couldn't do a secret.
So it basically implements multitasking like Android does it, with state saving and helper processes.
I just downloaded some of the release notes (the beta is slowly coming over my pipe), but yes, it is using Grand Central to do the multi-tasking. It is listed as one of the key foundational technologies added.
There's also quite a bit of documentation on how to use "blocks" (closures and lambdas to you unwashed, non-Apple people).
I agree, it is clever to use GCD. But I'm also very surprised--I didn't think GCD was light-weight enough for something like the iPhone. Pretty cool!
P.S. I'd link or copy and paste, but *technically* that would violate the NDA you sign as an iPhone developer. Hey wait, does talking about it ... [Apple gestapo busts down door] :-)
"Doubt your doubts and believe your beliefs." -- Switchfoot, Ode to Chin
http://www.google.com/phone
The Kruger Dunning explains most post on
It's not that we hate multitasking. It's that we hate excessive chrome and we hate having our batteries die because some useless crap is running in the background and we forgot about it.
So rather than replace the offending app, or tell the developer to fix a bug in that rogue app, we'll just eliminate an entire, basic category of OS functionality for everyone. Makes sense in a SteveJobsian sort of way...
Browsing at +1 - no ACs, I ignore their posts. So refreshing!
You're exactly right, if the engine isn't written in C/C++/Objective-C. Wait a minute, I think they typically are! Fancy that, I think they'll be fine.
If I was witty I'd put something funny here but, as it stands, I am not and have just wasted seconds of your life
Seriously, Apple is beginning to suffocate us developers. Instead of providing a way allow parallel user apps to either exit cleanly or kill them to avoid hogging CPU, Apple comes up with a way to tell you that Apple will provide for parallelism, you just have to hook into one of our services. Seriously, as a developer, that is very frustrating. We know the app that we are making and know where opportunities for parallelization lie. We dont want apple to tell us that. To avoid a few apps that misbehave, apple now thinks that it should not allow multitasking at user level at all!
Sure, but that's the route Apple decided to go. Yes, it probably saves cost and battery life to some extent (especially if that design is easily carried over into the next iphone). The ipad is basically a very fast cell phone with a great screen and huge battery.
The ipad is fast for most things now, but my early web-browsing and PDF-viewing experience suggests that RAM is at a premium on this device. Adding any kind of multitasking only makes that worse.
"The universe seems neither benign nor hostile, merely indifferent." --Carl Sagan
You prove the parent's point nicely. You're so attached to multitasking that you're willing to sacrifice battery life. Of course battery life has something to do with the topic, IT'S A PHONE. And you can say "Welcome to fast smartphones" all you want, but for most people these features:
- Has a reasonable battery life
- Doesn't require me to swap batteries
- Lets me listen to music in the background
Are more important than this feature:
- Lets me run sendmail in the background
iPhone has the first three and has since the beginning. You running around saying "Yay! Multitasking!" isn't saving Palm, and I say this as a Palm customer of over a decade that has gone iPhone.
STOP . AMERICA . NOW
Actually the battery life part is key to doing proper (which is better than true) multi-tasking on mobile device. The GP is actually 100% correct.
What really matters is functionality. What useful background process can you do on the Pre that can not be done on the iPhone. (I already know the answer, so you can just slip back into fantasyland where there are people in the world that are interested in WebOS devices).
iPhones will now be on par with the multitasking ability of Task Swapping in MS-DOS 4.0!
"Applications must be originally written in Objective-C, C, C++, or JavaScript as executed by the iPhone OS WebKit engine, and only code written in C, C++, and Objective-C may compile and directly link against the Documented APIs (e.g., Applications that link to Documented APIs through an intermediary translation or compatibility layer or tool are prohibited)."
Wow, just... wow. Apple has historically been not friendly to third-party developers since iPhone release, but this sinks it down to an entirely new level.
So, let me see. First, this obviously kills off any attempt to use any language other than C, C++ and ObjC for iPhone app development. We're not just talking about Flash here - compiling to C has historically been a popular cheap way to bootstrap a language, and many stick with it after getting it running - e.g. ISE Eiffel is a mature development tool that "compiles" to C.
The whole bit about "translation or compatibility layer" is also very broad. From the sound of it, this would definitely prohibit any attempt to develop a cross-platform framework that'd let you build an application for iPhone as well as other platforms from a single codebase (like e.g. Qt lets you do on the desktop today), whether third-party or developed in-house.
In fact, it sounds like it could also stretch far enough to prohibit any framework that wraps iPhone APIs, period - say, if someone came up with a C++ wrapper for ObjC classes for those of us who dislike square brackets - this might just restrict that kind of thing.
Between that, and the underwhelming WP7 announcement, I'm very glad that I've bought a Nexus One.
"Sales rate"? Are you projecting from the first month of sales for the Nexus One to a uniform total sales for the year? By that logic the iPad alone has a "sales rate" of roughly 109 million.
Man who leaps off cliff jumps to conclusion.
Between apple and sony, the world seems to be going towards lawyer locking of everything as fast as possible.
I'm not sure about other people, but that sanitized future world is kind of really depressing.
Next step is you'll have to spend all your digital money to the 4 big corporations that control and enforce each of their platforms integrity in totalitarian ways.
News... that only come from a couple big media agencies.
Games... that check permanently online they're unmodified, and require trusted platforms banning any form of liberty/homebrew.
Videos&Music... that only come out in DRM form with you-are-only-renting-from-us terms.
Internet connections... where you can only do what the isp deems safe.
etc...
``If you don't want to see the ads, don't buy ad-supported apps. There is almost always a more expensive ad-free version.''
Gad! Stop kidding yourself with statements like these: you paid full price so ads wont appear for the now fully fed. Fallacious: see cinemas with 30 minutes of boring-obnoxious ads & trailers!
See paid! cable television "broadcasts" riddled with ads. See PBS shows larded with 5 minutes of introductory wheat fields, granaries, mines, wind fields ads. See XM/Sirius radio with ... ^.^
Apple has always been against mult-tasking because they claim it hampers performance and drains the battery. As a Window Mobile user, I can't count the number of times my phone was freaking sluggish only to find that certain apps were running in the background that didn't kill themselves properly.
As an Android user, I have IM and IRC running in background all the time, and my battery life is just fine. And, no, I don't use any "task killer" applications.
I understand that it's very convenient to point fingers at poor WinMo while explaining why Apple can't do something right, but that's about as meaningful as saying that KDE4 is awesome because it's better than Vista. Let's compare apples and apples - i.e. modern mobile OS to modern mobile OS.
Ahh, the typical Apple approach to things.
"What, that??! That's not a feature!". "Multitasking? That just drains your battery, nobody wants that!".
Android will bury Apple for the same reason the PC buried the Mac. There will be a dozen companies coming out with fancy new hardware at a breakneck pace that Apple cannot keep up with.
It's already happening - the HTC Evo is to the iPhone what the iPhone was to an el-cheap Windows Mobile phone. Sure, the next iPhone will bridge the gap but Jesus, what's coming out later this year in the Android camp? I can't imagine.
That excludes a lot of iPhone frameworks out there (Unity, Corona, you name it). I'm sure that can't be what Apple means by that statement.
I'm sure that depend whether or not Apple likes the application in question...
It is what it is.
I do not like this kind of solution. Why would I want to give money to a company that doesn't want me to do what I want with a device I paid for? It's stupid to pay somebody who is acting against your interests.
I consider this to be a very temporary solution at best. I might be willing to do it, but only if no alternative is available. Since the N900 exists, I have no reason to consider buying an iPhone.
Heh, that's a funny thing to say.
It's not that I don't want you to have a choice. I'm just giving some friendly advice, based on past experiences. Buy it all you want if you like, but don't complain if you end up running into the limitations one day.