WWDC16 — Highlights

Pınar Olguç
Commencis
Published in
9 min readJun 26, 2016

This year, I had a chance to attend to Apple’s world wide developers conference held between 13–18th of July in San Francisco on behalf of my company Monitise MEA. In this post, I am going to share my learnings and comments about the event.

What’s new in IOS 10 ?

iMessage gets functional and fashionable

Apple opens iMessage to developers! What does that mean? This means applications will be able to interact with iMessage anymore. Developers will implement iMessage extensions for their apps and this will enable users to do operations that belongs to that app without leaving iMessage, such as sharing content, making payments etc.

For example if you have a hotel booking application you can implement an iMessage extension to enable users sharing the last viewed hotel without leaving iMessage. If the other user has the same hotel booking app he will be able to click the post you share and open it in the app. If he doesn’t have the same app the post will contain a link to App Store download also. This is a great way to spread your application to lots of users in an organic way.

This has been the functional part, you can also add visual extensions such as stickers! You can create purchasable sticker packs and sell on App Store. And creating a sticker pack application doesn’t require coding at all!

Siri learns to speak applications’ language

Apple opens Siri to developers with SiriKit. This means Siri will be able to interact with our applications. Siri extensions will be able to teach Siri new words and new actions and users will be able to perform those actions without having the need of opening the app.

Siri works in domains. Right now Siri is able to help us in these 6 domains: Messaging, VoIP calling, Payments, Workouts, Ride booking, Photo search. But Apple people announced that in later iOS versions new domains will be added.

How about an example? Take this phrase to make a payment through app named “UnicornPay”:

“Hey Siri, send Buttercup 85 bucks on UnicornPay for rainbow polish”

Siri will detect that the domain of this phrase is Payments, the intent is sending payment, app is UnicornPay.

And following parameters will be passed to UnicornPay app: payee is Buttercup, amount is 85, currency is USD(yes you tell bucks and Siri understands you mean USD). If UnicornPay app can not detect who Buttercup is then it can return to Siri some options similar to Buttercup, Siri will want user to select one. Another option may be returning an error to Siri, and Siri will want user to repeat the word or give another payee.

When all parameters of that payment is successfully captured, Siri will show a confirmation screen with the look and feel of your app(this screen must be developed as a part of your app’s Siri extension). And when the user confirms payment is done.

None of the stages requires to open the app itself or even touching the screen.

Maps get extended too!

Maps open up to developers. This will allow you to interact your app without leaving maps. You will be able to pay for a restaurant, book and pay for a Uber ride, and then track your ride, all without leaving the Maps. But currently this is it, there is not a free functional extension ability for maps. Maps actually use the same intents extension with Siri. Your Intents extension handles interactions that originate from the Maps in the same way that it handles requests coming from Siri.

Ride booking is supported by both Maps and Siri, and users can also make restaurants reservations with Maps. If you customise the user interface, your Intents UI extension can also configure itself differently, depending on whether the request came from Siri or Maps.

Sample book a ride extension

‘Raise to wake’ made notifications understandable

You know when you use touch id to unlock your screen and it makes impossible to read your notifications because notifications center shows less than 1 seconds before your phone unlocks. With iOS 10 you will be able to see notifications when you raise your phone and if the related app provides you more public details it will be able to listen to your 3d touch to show you more details on the notificiations center without you even unlocking your phone.

Be careful about privacy though! Notification center is suitable for showing only public info!

Speech Recognition brings a new port between user and the app

Apple provides new Speech.framework which will allow you to do continuous speech recognition and helps you build apps that can recognize speech and transcribe it into text.

Spotlight search gets a continuation feature

In iOS 9, we are already able to index content of an app and search for that content in Spotlight. In iOS 10 users will be able to continue a search they began in Spotlight when they open your app.

This looks like a small feature but actually this is a feature that has the potential to increase your app’s ranking quite a lot. Especially if your app has lots of public content.

What is more iOS 10 introduces a private way to help improve the ranking of your app’s content in search results. Apple will count the frequency of which popular deep links are visited without ever associating a user with a link. Only hash values will be collected and user’s search data will remain private.

Spotlight search continuation
Spotlight search continuation

VoIP apps begin to have a more natural user experience with CallKit

Use CallKit.framework to let users view and answer incoming VoIP calls on the lock screen and manage contacts from VoIP calls in the Phone app’s Favorites and Recents views.

CallKit also introduces app extensions that enable call blocking and caller identification. You can create an app extension that can associate a phone number with a name or tell the system when a number should be blocked.

Text suggestions gets sophisticated

Developers will be able to specify the semantic meaning of the content they expect users to enter in a text area. When they provide this information, the system can in some cases automatically select an appropriate keyboard and improve keyboard corrections. What is more system will do proactive integration with information supplied from other apps and websites. For example, if you tell the system that you expect users to enter a complete address in a text field, the system can suggest the address of a location the user was recently viewing. Classy…

Wide Color

This one is most exiciting for app designers. Until now only color space available was sRGB but with iOS 10 you’ll be able to use assets or colors from a wider color space named extended RGB. You’ll get more vivid colors and more fresh look. But this is a change in hardware level and not every device supports it. Right now there is only iPad Pro (9.7 inch). But you don’t have to worry, because your wide color assets won’t be part of the bundle of not supporting devices(thanks to app slicing).

Notifications get smarter

UserNotifications.framework is introduced iOS 10 and it supports the delivery and handling of local and remote notifications. You can now schedule the delivery of local notifications based on specific conditions, such as time or location.

What is more, Apps and app extensions can use this framework to receive and modify local and remote notifications when they are delivered to the user’s device. So if a notification is old and no need to show it, your app will be able to update or delete it.

Also there is a new Notifications UI framework (UserNotificationsUI.framework), which lets you customize the appearance of local and remote notifications.

Use this framework to define an app extension that receives the notification data and shows it with your app’s look and feel. Your extension can also respond to custom actions associated with those notifications.

Sample notification with an icon and while screen is unlocked
Sample notification (Press for more)
Sample extended notification
Sample slide for more notification
Sample slided Notification

Apple Pay makes paying possible from various apps with PassKit

Users will be able to make secure payments using Apple Pay from websites and through interaction with Siri and Maps.

For developers, iOS 10 introduces new APIs you can use in code that runs in both iOS and watchOS, the ability to support dynamic payment networks, and a new sandbox testing environment.

Swift Playgrounds for Everyone

One of the surprises of this year’s wwdc was Apple’s new way of teaching people Swift programming language. If you are an iPad user and curious about programming this is for you. Because swift playgrounds will offer you a game playing experience while teaching a new programming language. You’ll be able to write real swift code with step by step instructions and share your output with friends.

What’s new in watch OS 3.0 ?

The Dock

watchOS 3 introduces the Dock and your app’s will definitely try to get in the dock! If users puts your app in the dock it is good news. So what is the Dock? Dock is a paging look which provides a quick way for users to view and launch their favorite apps. Data seen in the dock is updated periodically. The system automatically takes periodic snapshots of your app and uses them to populate the Dock and to serve as your app’s launch image. You can update both the currently presented interface controller and the controller’s content before the snapshot is taken.

Background Tasks

In my opinion this is the most powerful update of watchOS 3.0 because in a world that users becoming more and more impatient day by day, none of the users wants to wait for an app’s loading time on launch. Background tasks give your app time to run in the background and ensure that the information users want is available before they open your app.

Complications Enhancements

If your watchOS app provides users some actionable and summary information you should definitely make use of complications! Complications appear directly on the watch face.

Make use of small icons and abbreviations as good as possible, this is an area you want your users to understand what you mean at a glance, they should not need to spend more than a couple of seconds trying to understand what your app is telling.

And plus users can launch your app simply by tapping one of your complications.

Existing Frameworks Now Available in watchOS

The Scene Kit framework lets you integrate 3D models into your app’s UI.

The AVFoundation framework helps you manage and play audio.

The CloudKit Framework provides interfaces for moving data between your app and your iCloud containers.

The Core Audio framework provides data types that help you represent audio streams, complex buffers, and time values.

The GameKit framework helps you create great social games.

The User Notifications framework supports the delivery and handling of local and remote notifications.

To Sum Up

Well, It was a pretty intensely teaching experience for me… And it was fun.

I met lots of new people all over the world. I also had chance to talk to Apple developers about our technical issues and take advices. And if you are planning to attend WWDC next years, I will have a huge advice for you…

Take your coat for God’s sake! Take your coat! San Francisco can be freezing in June! :)

--

--