CIContext *context = [CIContext contextWithOptions:nil];
CIImage *inputImage = [CIImage imageWithCGImage:imageRef];
CIFilter *filter = [CIFilter filterWithName:@”CIGaussianBlur”];
[filter setValue:inputImage forKey:kCIInputImageKey];
[filter setValue:[NSNumber numberWithFloat:15.0f] forKey:@”inputRadius”];
CIImage *result = [filter valueForKey:kCIOutputImageKey];
CGImageRef result = [context createCGImage:result fromRect:[inputImage extent]];
iOS 7 supports the following new background execution modes for apps:
Apps that regularly require new content can register with the system and be woken up or launched periodically to download that content in the background. To register, include the UIBackgroundModes key with the fetch value in your app’s Info.plist file and set the minimum time you want between fetch operations using the setMinimumBackgroundFetchInterval: method. You must also implement theapplication:performFetchWithCompletionHandler: method in your app delegate to perform any downloads.
Apps that use push notifications to notify the user that new content is available can now use those notifications to initiate background download operations. To support this mode, include theUIBackgroundModes key with the remote-notification value in your app’s Info.plist file. Your app delegate must also implement theapplication:didReceiveRemoteNotification:fetchCompletionHandler: method.
Apps supporting either the fetch or remote-notification background modes may be launched or moved from the suspended to background state at appropriate times. In the case of the fetch background mode, the system uses available information to determine the best time to launch or wake apps. For example, it does so when networking condition are good or when the device is already awake. Apps supporting the remote-notification background mode may be woken up when a new push notification arrives but before that notification is delivered to the user. The app can use the interval to download new content and have that content ready to present to the user when the notification is subsequently delivered.
To handle the downloading of content in the background, apps should use the new NSURLSession class. This class improves on the existing NSURLConnection class by providing a simple, task-based interface for initiating and processing NSURLRequest objects. A single NSURLSession object can initiate multiple download and upload tasks, and through its delegate can handle any authentication requests coming from the server.
For more information about the new background modes, see “App States and Multitasking” in iOS App Programming Guide.
I’m delighted to announce that we’ve reached an agreement to acquire Tumblr!
We promise not to screw it up. Tumblr is incredibly special and has a great thing going. We will operate Tumblr independently. David Karp will remain CEO. The product roadmap, their team, their wit and irreverence will all remain the same as will their mission to empower creators to make their best work and get it in front of the audience they deserve. Yahoo! will help Tumblr get even better, faster.
Tumblr has built an amazing place to follow the world’s creators. From art to architecture, fashion to food, Tumblr hosts 105 million different blogs. With more than 300 million monthly unique visitors and 120,000 signups every day, Tumblr is one of thefastest-growing media networks in the world. Tumblr sees 900 posts per second (!) and 24 billion minutes spent onsite each month. On mobile, more than half of Tumblr’s users are using the mobile app, and those users do an average of 7 sessions per day. Tumblr’s tremendous popularity and engagement among creators, curators and audiences of all ages brings a significant new community of users to the Yahoo! network. The combination of Tumblr+Yahoo! could grow Yahoo!’s audience by 50% to more than a billion monthly visitors, and could grow traffic by approximately 20%.
In terms of working together, Tumblr can deploy Yahoo!’s personalization technology and search infrastructure to help its users discover creators, bloggers, and content they’ll love. In turn, Tumblr brings 50 billion blog posts (and 75 million more arriving each day) to Yahoo!’s media network and search experiences. The two companies will also work together to create advertising opportunities that are seamless and enhance user experience.
As I’ve said before, companies are all about people. Getting to know the Tumblr team has been really amazing. I’ve long held the view that in all things art and design, you can feel the spirit and demeanor of those who create them. That’s why it was no surprise to me that David Karp is one of the nicest, most empathetic people I’ve ever met. He’s also one of the most perceptive, capable entrepreneurs I’ve worked with. His respect for Tumblr’s community of creators is awesome, and I’m absolutely delighted to have him and his entire team join Yahoo!.
Both Tumblr and Yahoo! share a vision to make the Internet the ultimate creative canvas by focusing on users, design — and building experiences that delight and inspire the world every day.
Everyone, I’m elated to tell you that Tumblr will be joining Yahoo.
Before touching on how awesome this is, let me try to allay any concerns: We’re not turning purple. Our headquarters isn’t moving. Our team isn’t changing. Our roadmap isn’t changing. And our mission – to empower creators to…
Update (Aug 2012): I’ve made a class called SKBounceAnimation that handles almost all the heavy lifting for you. Check out the blog post and view it on Github. UIScrollViews, which are the main ele…