a swift introduction to ios 10
TRANSCRIPT
JAMES SUGRUEA SWIFT INTRODUCTION TO IOS 10
@SUGRUE
SIRIKIT
▸ VoIP calling
▸ Messaging
▸ Payments
▸ Photo
▸ CarPlay (automotive vendors only)
▸ Restaurant reservations (requires additional support from Apple)
DOMAINSSIRIKIT
▸ Workouts
▸ Ride booking
▸ CarPlay (automotive vendors only)
▸ Restaurant reservations (requires additional support from Apple)
▸ Data Model
▸ Networking
▸ User Interface
▸ Decision Making Logic
PREPARATIONSIRIKIT
If you are adding SiriKit to an existing app, consider Embedded Frameworks
SIRIKIT ADD EXTENSION
SIRIKIT EXTENSIONS
SIRIKIT ENABLING SIRI FOR YOUR APP▸ NSSiriUsageDescription
key in Info.plist to describe what your app plans to do with Siri
▸ Call requestSiriAuthorization to display the alert to user.
SIRIKIT INTENTSIntentHandler inherits from INExtension and then specific Intent handlers
SIRIKIT INTENTSDeclare intents supported by your extension in Info.plist
▸ Each Intent that you support will need to be listed in IntentsSupported
▸ Use IntentsRestrictedWhileLocked to prevent access to features when the phone is locked
SIRIKIT RESOLVE, CONFIRM, HANDLE
SIRIKIT RESOLVE, CONFIRM, HANDLE
SIRIKIT MAPS
MAPS
APPSIMESSAGE
IMESSAGE APP STORE
IMESSAGE STANDALONE APPS
IMESSAGE EXTENDING EXISTING APPS
IMESSAGE CUSTOM INTERFACE
IMESSAGE CUSTOM INTERFACE
MSMessagesAppViewController inherits from UIViewController
Track messages with didReceive, didStartSending, didCancelSending
IMESSAGE CUSTOM INTERFACE
STICKERSIMESSAGE
IMESSAGE APP STORE
IMESSAGE STICKER PACK
IMESSAGE STICKER PACK
IMESSAGE STICKER PACK
IMESSAGE STICKER PACK
“LINE SOLD $268 MILLION WORTH OF STICKERS LAST YEAR AMID ASIA’S MESSAGING BOOM”
ANIMATIONS
ANIMATIONS
▸ UIViewPropertyAnimator create reusable animations and trigger when required
▸ Animate changes to views and dynamically modify your animations before they finish
ANIMATIONS DEMO
USER NOTIFICATIONS
NOTIFICATION SERVICENOTIFICATIONS
SPEECH RECOGNITION
▸ Import Speech Framework
▸ SFSpeechRecognizer handles recognition in a specific locale
▸ SFSpeechAudioBufferRecognitionRequest provides audio input to the recogniser
▸ SFSpeechRecognitionTask provides result of the request, allows cancelling task
▸ AVAudioEngine provides audio input
REQUIRED PARTSSPEECH RECOGNITION
USER PERMISSION REQUIRED!
TheApp
SPEECH RECOGNITION LIMITATIONS▸ “Devices are limited by the number of recognitions that can
be performed in one day”
▸ “Individual apps may be throttled globally”
▸ “Speech recognition can place a relatively high burden on battery life and network usage”
▸ “Utterance audio duration is limited to about one minute, which is similar to the limit for keyboard-related dictation”
https://developer.apple.com/reference/speech
SWIFT 3.0
SWIFT 3.0 CHANGES
▸ Access control changesprivate, fileprivate, public and open
▸ Verbs & NounsmyArray.sort() //returns sorted version the
▸ User Interface
▸ Decision Making Logic
JAMES SUGRUEA SWIFT INTRODUCTION TO IOS 10
@SUGRUE