Book Image

Learning Xcode 8

By : Jak Tiano
Book Image

Learning Xcode 8

By: Jak Tiano

Overview of this book

Over the last few years, we’ve seen a breakthrough in mobile computing and the birth of world-changing mobile apps. With a reputation as one of the most user-centric and developer-friendly platforms, iOS is the best place to launch your next great app idea. As the official tool to create iOS applications, Xcode is chock full of features aimed at making a developer’s job easier, faster, and more fun. This book will take you from complete novice to a published app developer, and covers every step in between. You’ll learn the basics of iOS application development by taking a guided tour through the Xcode software and Swift programming language, before putting that knowledge to use by building your first app called “Snippets.” Over the course of the book, you will continue to explore the many facets of iOS development in Xcode by adding new features to your app, integrating gestures and sensors, and even creating an Apple Watch companion app. You’ll also learn how to use the debugging tools, write unit tests, and optimize and distribute your app. By the time you make it to the end of this book, you will have successfully built and published your first iOS application.
Table of Contents (23 chapters)
Learning Xcode 8
Credits
About the Author
About the Reviewer
www.PacktPub.com
Preface
Index

Advanced notifications


So right now, we've got our notification registered to be delivered every day at noon. But that's only scratching the surface with what we can do with notifications. In this section we'll add actions, badges, and custom sounds.

Categories and actions

When you receive a notification in iOS, sometimes you can 3D touch on the notification or pull it down to reveal quick response actions. We can add our own notification actions by creating UNNotificationAction objects, adding them to a UNNotificationCategory, and then assigning a category to a notification's content.

To begin, let's create a new function that will take care of setting up all of the categories and actions. We'll modify our application(didFinishLaunchingWithOptions:) function like so:

let center = UNUserNotificationCenter.current()
center.requestAuthorization(options: [.alert, .badge, .sound]) { granted, error in
    if granted {
        center.setNotificationCategories( self.getNotificationCategories() )
 ...