Apple Watch App Development
()
About this ebook
- Find out how to download and install the Xcode development tools before learning about Xcode playgrounds and the Swift programming language
- Discover everything you need to know about the WatchKit platform architecture, its classes, as well its limitations
- This book introduces you to the very latest mobile platform with hands-on instructions so you can build your very own Apple Watch apps
This book is intended for developers who are interested in creating amazing apps for the Apple Watch platform. Readers are expected to have some experience using Swift.
Steven F. Daniel
Steven F. Daniel is originally from London, England, but lives in Australia. He is an experienced software developer with more than 13 years of experience developing desktop and web-based applications for a number of companies, in sectors including insurance, banking and finance, oil and gas, and local government. Xcode 4 iPhone Development Beginner's Guide is his first book. Steven is always interested in emerging technologies, and is a member of the SQL Server Special Interest Group (SQLSIG) and the Java Community. He is the owner and founder of GenieSoft Studios (http://www.geniesoftstudios.com/), a software development company based in Melbourne, Victoria, that currently develops games and business applications for the iOS, Android and Windows platforms. Steven has also been the co-founder and Chief Technology Officer (CTO) of SoftMpire Pty Ltd, a company that focused primarily on developing business applications for the iOS and Android platforms. You can check out his blog at http://geniesoftstudios.com/blog/, or follow him on Twitter at http://twitter.com/GenieSoftStudio.
Read more from Steven F. Daniel
Android Wearable Programming Rating: 0 out of 5 stars0 ratingsiOS 5 Essentials Rating: 0 out of 5 stars0 ratings
Related to Apple Watch App Development
Related ebooks
iOS 5 Programming Pushing the Limits: Developing Extraordinary Mobile Apps for Apple iPhone, iPad, and iPod Touch Rating: 0 out of 5 stars0 ratingsProgramming with Swift 4.2: Building iOS Apps with Swift, #1 Rating: 0 out of 5 stars0 ratingsiOS App Development For Dummies Rating: 0 out of 5 stars0 ratingsiPad App Guide: How To Create Your Own Ipad App and Make An Amazing Income Stream Rating: 0 out of 5 stars0 ratingsIOS Programming For Beginners: The Simple Guide to Learning IOS Programming Fast! Rating: 0 out of 5 stars0 ratingsiOS 18 Programming for Beginners: Learn iOS development with Swift 6, Xcode 16, and iOS 18 - your path to App Store success Rating: 0 out of 5 stars0 ratingsBeginning iOS Programming For Dummies Rating: 0 out of 5 stars0 ratingsiOS 6 Programming Pushing the Limits: Advanced Application Development for Apple iPhone, iPad and iPod Touch Rating: 0 out of 5 stars0 ratingsAn iOS Developer's Guide to SwiftUI: Design and build beautiful apps quickly and easily with minimum code Rating: 0 out of 5 stars0 ratingsiOS 17 App Development for Beginners: Get started with iOS app development using Swift 5.9, SwiftUI, and Xcode 15 (English Edition) Rating: 0 out of 5 stars0 ratingsMastering iOS 18 Development: Take your iOS development experience to the next level with iOS, Xcode, Swift, and SwiftUI Rating: 0 out of 5 stars0 ratingsSwift Essentials: A Comprehensive Guide to iOS App Development Category Rating: 0 out of 5 stars0 ratingsHow to Deploy Any Web Application to the Apple App Store Rating: 0 out of 5 stars0 ratingsHow To Build And Market An IPhone App Rating: 0 out of 5 stars0 ratingsMastering Xcode: A Developer's Journey Rating: 0 out of 5 stars0 ratingsLiveCode Mobile Development: Beginner's Guide - Second Edition Rating: 4 out of 5 stars4/5iOS Programming: Starter Guide: What Every Programmer Needs to Know About iOS Programming Rating: 2 out of 5 stars2/5Learning iPhone Game Development with Cocos2D 3.0 Rating: 0 out of 5 stars0 ratingsiOS Programming For Beginners: The Ultimate iOS App Developer's Guide Rating: 3 out of 5 stars3/5Learning Swift Rating: 5 out of 5 stars5/5Swift Cookbook: Proven recipes for developing robust iOS applications with Swift 5.9 Rating: 0 out of 5 stars0 ratingsApplication Development with Swift Rating: 0 out of 5 stars0 ratingsMac Application Development For Dummies Rating: 0 out of 5 stars0 ratingsXamarin 4 By Example Rating: 0 out of 5 stars0 ratingsLearning Xcode 8 Rating: 0 out of 5 stars0 ratingsLearning Unreal® Engine iOS Game Development Rating: 0 out of 5 stars0 ratingsiPhone For Seniors For Dummies Rating: 4 out of 5 stars4/5iPad Application Development For Dummies Rating: 3 out of 5 stars3/5macOS App Development: The SwiftUI Way Rating: 0 out of 5 stars0 ratings
Operating Systems For You
MacBook Pro User Manual: 2022 MacBook Pro User Guide for beginners and seniors to Master Macbook Pro like a Pro Rating: 0 out of 5 stars0 ratingsExcel : The Ultimate Comprehensive Step-By-Step Guide to the Basics of Excel Programming: 1 Rating: 5 out of 5 stars5/5Linux Bible Rating: 0 out of 5 stars0 ratingsLinux: Learn in 24 Hours Rating: 5 out of 5 stars5/5Linux Basics for Hackers: Getting Started with Networking, Scripting, and Security in Kali Rating: 3 out of 5 stars3/5Bash Command Line Pro Tips Rating: 5 out of 5 stars5/5Raspberry Pi Cookbook for Python Programmers Rating: 0 out of 5 stars0 ratingsThe Official Raspberry Pi Beginner's Guide: How to use your new computer Rating: 4 out of 5 stars4/5OneNote: The Ultimate Guide on How to Use Microsoft OneNote for Getting Things Done Rating: 1 out of 5 stars1/5Hacking : The Ultimate Comprehensive Step-By-Step Guide to the Basics of Ethical Hacking Rating: 5 out of 5 stars5/5The Linux Command Line Beginner's Guide Rating: 4 out of 5 stars4/5PowerShell: A Beginner's Guide to Windows PowerShell Rating: 4 out of 5 stars4/5Linux All-In-One For Dummies Rating: 2 out of 5 stars2/5Linux All-in-One For Dummies Rating: 3 out of 5 stars3/5Tor Darknet Bundle: Master the Art of Invisibility Rating: 0 out of 5 stars0 ratingsiPhone Unlocked Rating: 0 out of 5 stars0 ratingsMAC OS X UNIX Toolbox: 1000+ Commands for the Mac OS X Rating: 0 out of 5 stars0 ratingsThe Mac Terminal Reference and Scripting Primer Rating: 4 out of 5 stars4/5Getting Started with PowerShell Rating: 0 out of 5 stars0 ratingsMacBook Air (Retina) with MacOS Catalina: Getting Started with MacOS 10.15 for MacBook Air Rating: 0 out of 5 stars0 ratingsDecode the iPhone 16 and iPhone 16 Pro: A Simple Guide to the 2024 iPhone and iOS 18 Rating: 0 out of 5 stars0 ratingsCompTIA A+ Complete Study Guide: Core 1 Exam 220-1101 and Core 2 Exam 220-1102 Rating: 0 out of 5 stars0 ratingsMastering Windows 365: Deploy and Manage Cloud PCs and Windows 365 Link devices, Copilot with Intune, and Intune Suite Rating: 0 out of 5 stars0 ratingsmacOS Sonoma For Dummies Rating: 0 out of 5 stars0 ratingsWindows 11 All-in-One For Dummies Rating: 5 out of 5 stars5/5Ubuntu Linux Bible Rating: 0 out of 5 stars0 ratings
Reviews for Apple Watch App Development
0 ratings0 reviews
Book preview
Apple Watch App Development - Steven F. Daniel
Table of Contents
Apple Watch App Development
Credits
About the Author
Acknowledgements
About the Reviewer
www.PacktPub.com
eBooks, discount offers, and more
Why subscribe?
Preface
What this book covers
What you need for this book
Who this book is for
Conventions
Reader feedback
Customer support
Downloading the example code
Errata
Piracy
Questions
1. Introducing the Swift Programming Language
Registering as an Apple developer
Getting and installing Xcode development tools
Introduction to Xcode playgrounds
Introduction to the Swift language
Variables, constants, strings, and semicolons
Variables
Constants
Strings
Semicolons
Numeric types and conversion
Booleans, tuples, and string interpolation
Booleans
Tuples
String interpolation
Controlling the flow
The for…in loops
What's new in Swift 2.0
Error handling
Binding
Protocol extensions
Summary
2. Understanding Apple Watch
Introduction to the WatchKit platform
Introducing the WatchKit application architecture
Introducing the WatchKit application life cycle
Introducing the WatchKit classes
Limitations of the WatchKit platform
Apple Watch Human Interface Guidelines
What's new in watchOS 2
Watch faces
Photos
Time-Lapse
Time travel
Nightstand mode
Activation Lock
FaceTime audio
Social features
Summary
3. Exploring WatchKit Controls
Building the Guessing Game application
Using Interface Builder to create the watch user interface
Adding our user interface controls – text and labels
Creating Outlets to our Interface Builder objects
Creating Actions that respond to user actions
Building and running the Guessing Game application
Summary
4. Using the Core Location and Watch Connectivity Frameworks
Creating the navigation tracking application
Building the Watch Tracker application – iPhone
Adding and removing annotation placeholders
Handling requests for background location updates
Building and running the Watch Tracker application
Building the Watch Tracker application – WatchKit
Limitations of using Core Location within watchOS 2
Using Interface Builder to create the Watch Tracker UI
Creating the Outlets for our Interface Builder objects
Creating an Action event to handle our map zooming
Using Core Location with the WatchKit extension
Communicating between the iPhone app and the WatchTracker WatchKit extension
Integrating the Watch Connectivity framework – iPhone app
Integrating the Watch Connectivity framework – WatchKit extension
Building and running the Watch Tracker application
Summary
5. Navigating Around in WatchKit
Building the Health Monitor application
Understanding page-based interfaces and navigation
Understanding modal interfaces and navigation
Understanding hierarchical interfaces and navigation
Integrating the HealthKit framework to handle updates
Integrating the HealthKit framework – iPhone app
Building the Health Monitor application – WatchKit
Creating the profile details interface controller's WatchKit class
Creating the Outlets for our Interface Builder objects
Creating an Action event to handle our Start Monitoring button
Using HealthKit to obtain heart rate and pedometer information
Using HealthKit to obtain biological personal information
Building and running the Health Monitor application
Summary
6. Implementing Tables within Your App
Building the Shopping List application
Setting up and provisioning your app for Apple Pay
Configuring our Shopping List app to work with Apple Pay
Understanding the WatchKit table object
Building the Shopping List application – WatchKit
Creating the table row interface controller's WatchKit class
Configuring our product table row controller class
Creating the product class structure to hold product items
Creating the ProductsList property list
Populating our WatchKit table controller with row information
Responding when a row has been selected within our table
Running the Shopping List application – WatchKit
Handling payment requests with the PassKit framework
Building and running the Shopping List application
Summary
7. Adding Menus to Your App
Introduction to gestures and the menu interface
Understanding WatchKit context menu gestures
Understanding the WatchKit context menu interface
Design considerations for WatchKit context menu icons
Understanding the default WatchKit context menu actions
Adding a menu to our Shopping List application – WatchKit
Establishing the WatchKit context menu connections
Design considerations when using Taptic Engine
Learning how to integrate Apple Watch haptics within an app
Running the Shopping List application – WatchKit
Summary
8. Incorporating the Glance Interface in Your App
Introduction to working with WatchKit glances
Understanding the glance controller life cycle
Adding a glance to our Shopping List application – WatchKit
Creating a glance build scheme for our Shopping List app
Creating the glance interface controller WatchKit class
Configuring our glance controller using templates
Establishing glance interface controller connections
Storing information to show within your glance controller
Displaying information within your glance controller
Understanding the glance interface guidelines
Running the Shopping List application – WatchKit
Summary
9. Incorporating Notifications within Your App
Working with WatchKit notifications
Understanding the notification controller life cycle
Configuring the notification scheme for our Shopping List app
Adding Action buttons to your dynamic notifications
Responding to actions within your custom notifications
The difference between static and dynamic interface controllers
Configuring our Shopping List app's dynamic notification controller
Establishing our notification controller connections
Configuring a category for our static interface controller
Scheduling notifications with your notification controller
Displaying messages within the notification interface
Understanding the notification interface guidelines
Running the Shopping List application – WatchKit
Summary
10. Image Compression and Animation
Building the animation application – WatchKit
Setting up and adding images to the assets catalog
Configuring our app to use App Transport Security
Using Interface Builder to create the watch user interface
Establishing connections to our interface controller
Establishing our Action events that respond to user actions
Animating your images within the WatchKit interface
Loading and compressing images within the WatchKit interface
Building and running the Animation Example application
Summary
11. Packaging and Deploying Your App
Creating and setting up your iOS development team
Creating the iOS development certificate
Obtaining the development certificate from Apple
Creating App IDs for your WatchKit applications
Creating development provisioning profiles
Profiling your application using Xcode Instruments
Preparing your app for submission using iTunes Connect
Submitting an app to iTunes Connect using Xcode
Summary
Index
Apple Watch App Development
Apple Watch App Development
Copyright © 2016 Packt Publishing
All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews.
Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the author, nor Packt Publishing, and its dealers and distributors will be held liable for any damages caused or alleged to be caused directly or indirectly by this book.
Packt Publishing has endeavored to provide trademark information about all of the companies and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy of this information.
First published: April 2016
Production reference: 1250416
Published by Packt Publishing Ltd.
Livery Place
35 Livery Street
Birmingham B3 2PB, UK.
ISBN 978-1-78588-636-2
www.packtpub.com
Credits
Author
Steven F. Daniel
Reviewer
Dylan Marriott
Commissioning Editor
Amarabha Banerjee
Acquisition Editor
Reshma Raman
Content Development Editor
Priyanka Mehta
Technical Editor
Taabish Khan
Copy Editor
Shruti Iyer
Project Coordinator
Izzat Contractor
Proofreader
Safis Editing
Indexer
Rekha Nair
Graphics
Abhinash Sahu
Production Coordinator
Melwyn Dsa
Cover Work
Melwyn Dsa
About the Author
Steven F. Daniel is the CEO and founder of GENIESOFT STUDIOS, a software development company that is based in Melbourne, Victoria, which focuses primarily on developing games and business applications for iOS, Android, and Mac OS X. Steven is a software developer with more than 14 years of experience developing desktop and web-based applications for a number of companies, including ANZ, Department of Justice, BP Australia, and AXA Australia.
Steven is always interested in emerging technologies, and he is a member of the SQL Server Special Interest Group (SQLSIG), Melbourne CocoaHeads, and the Java Community. He was the co-founder and Chief Technology Officer (CTO) of SoftMpire Pvt Ltd., a company that focused primarily on developing business applications for the iOS and Android platforms.
Steven is the author of various book titles: Xcode 4 iOS Development Beginner's Guide, iOS 5 Essentials, iPad Enterprise Application Development Blueprints, Xcode 4 Cookbook, and Android Wearable Programming.
Check out his blog at http://www.geniesoftstudios.com/blog/, or follow him on Twitter at http://twitter.com/GenieSoftStudio.
Acknowledgements
No book is the product of just the author; he just happens to be the one with his name on the cover. A number of people have contributed to the success of this book, and it would take more space than I have to thank each one individually.
I would personally like to thank two special people who have been an inspiration and who have provided me with so much support during the writing of this book. The first is Reshma Raman, my Senior Acquisition Editor, who is the reason that this book exists, and the second is Priyanka Mehta for her understanding and support as well as her brilliant suggestive approaches during the chapter rewrites. I would like to thank both of you for everything and making the writing process enjoyable.
To my reviewers, thank you so much for your valued suggestions and improvements to make this book what it is, I am truly grateful to each and every one of you.
Thank you to the entire Packt Publishing team for working so diligently to help bring out a high quality product. A big shout out to the engineers at Apple for creating the Apple Watch and the WatchKit Platform to provide developers with the tools to create fun and sophisticated applications.
Finally, I would like to thank all of my friends for their support, understanding, and encouragement during the book writing process. I am extremely grateful to have you as my friends, and it is a privilege to know each and every one of you.
About the Reviewer
Dylan Marriott is a young iOS developer from Switzerland. At the start of his career, he worked with web technologies, but he soon got involved with mobile and never went back. He started off with Android and then transitioned toward iOS. He currently works at Evernote, where he gets to work with the newest iOS technologies. In his free time, he has published a number of iOS and Apple Watch apps.
www.PacktPub.com
eBooks, discount offers, and more
Did you know that Packt offers eBook versions of every book published, with PDF and ePub files available? You can upgrade to the eBook version at www.PacktPub.com and as a print book customer, you are entitled to a discount on the eBook copy. Get in touch with us at
At www.PacktPub.com, you can also read a collection of free technical articles, sign up for a range of free newsletters and receive exclusive discounts and offers on Packt books and eBooks.
eBooks, discount offers, and morehttps://www2.packtpub.com/books/subscription/packtlib
Do you need instant solutions to your IT questions? PacktLib is Packt's online digital book library. Here, you can search, access, and read Packt's entire library of books.
Why subscribe?
Fully searchable across every book published by Packt
Copy and paste, print, and bookmark content
On demand and accessible via a web browser
This book is dedicated to:
My favorite uncle Benjamin Jacob Daniel, thank you for always making me smile and for inspiring me to work hard and achieve my dreams. You are a true inspiration, and I couldn't have done this without your love, support, and guidance. Thank you.
Chan Ban Guan, for the continued patience, encouragement, and support, and most of all, for believing in me during the writing of this book.
I would like to thank my family for their continued love and support and for always believing in me throughout the writing of this book. This book would not have been possible without your love and understanding, and I would like to thank you from the bottom of my heart.
Preface
With the increasing amount of new wearable devices hitting the market, wearables are the next wave of mobile computing technology. After the release of Apple's WatchKit SDK, a whole new world of exciting development possibilities awaits us.
Apple Watch App Development provides you with a practical approach that shows you how to develop and build Apple Watch apps using the Xcode Integrated Development Environment. You will be introduced to the architecture and limitations of the Apple Watch platform, followed by an in-depth look at the Swift programming language, where we talk about closures, tuples, protocols, delegates, and how to work with Xcode playgrounds.
We also discuss more advanced topics, such as notifications, glances, Apple Pay, as well as the Core Location and Watch Connectivity frameworks to synchronize data between the Apple Watch and the iPhone using the WatchKit platform. By the end of this book, you will have a good understanding of how to build real-world applications for the Apple Watch platform using the WatchKit framework and Swift 2.0.
In this book, I have tried my best to keep the code simple and easy to understand by providing a step-by-step approach with lots of screenshots at each step to make it easier to follow. You will soon be mastering the different aspects of Apple Watch wearable programming, as well as mastering the technology and skills that are needed to create your own applications for the Apple Watch platform.
Feel free to contact me at <[email protected]> for any queries, or just drop me an e-mail to say Hello
.
What this book covers
Chapter 1, Introducing the Swift Programming Language, focuses on how to go about signing up to the Apple Developer program, as well as downloading and installing the Xcode development tools. We will cover Xcode playgrounds before moving on to learning the basics of the Swift programming language and some of the new additions to Swift with Swift 2.
Chapter 2, Understanding Apple Watch, introduces you to the WatchKit platform architecture and the application life cycle, as well as a list of the WatchKit classes that make up the WatchKit platform. You'll learn about some of the limitations behind the WatchKit platform architecture, as well as some of the new additional features that are a part of watchOS 2. You will then go on to learn about the Apple Watch Human Interface Guidelines.
Chapter 3, Exploring WatchKit Controls, introduces you to some of the controls that come as a part of the WatchKit platform. You will learn how to work with Xcode's Interface Builder to build the visual interface for our first WatchKit application. You will also learn how to use Outlets to bind objects to the Interface Builder objects and create some Action events to respond to these objects when tapped by the user to provide visual feedback.
Chapter 4, Using the Core Location and Watch Connectivity Frameworks, delves deeper into learning more about the WatchKit framework and the new layout system using groups. You'll learn about the MapKit and WKInterfaceMap frameworks. You will also learn how you can use these to incorporate mapping capabilities within your WatchKit apps using the Watch Connectivity framework to send geographical location-based coordinates between your iOS app and WatchKit to display the user's current location on the Apple Watch.
Chapter 5, Navigating Around in WatchKit, introduces you to some of the ways that you can navigate within the watch face user interface. You'll learn the differences between page-based, modal, and hierarchical navigation, and when to use them. You will then learn how to use the HealthKit framework to access health-related information and share this information between the iOS device and the WatchKit extension to display a user's current heart rate, blood type, and number of steps taken for a particular day.
Chapter 6, Implementing Tables within Your App, focuses on teaching you how to create applications that handle Apple Pay payments using the PassKit framework. You will learn how to pass information between the iOS device and the WatchKit extension. You will also learn how to use the WKInterfaceTable controller, how to set it up and configure it, as well as how to display information from a JSON file.
You will learn how to use the WKInterfaceTable methods to determine when a row has been selected by the user and respond to this action.
Chapter 7, Adding Menus to Your App, introduces you to WatchKit menus, and how you can incorporate them into your own applications, as well as respond to them based on what the user has chosen. We end the chapter by covering how you can use the Taptic Engine to integrate haptic feedback in your own applications.
Chapter 8, Incorporating the Glance Interface in Your App, shows you how to effectively incorporate WatchKit glances within an existing WatchKit application by creating a custom GlanceInterfaceController class to display information within the glance interface. You'll learn about the glance interface guidelines, which outline the guidelines and principles that you need to follow when designing your layouts for the different Apple Watch screen sizes.
Chapter 9, Incorporating Notifications within Your App, explains how to incorporate and configure local and remote notifications within an existing Apple Watch application. You will learn about the notifications life cycle and the differences between static and dynamic interfaces.
You will learn about the Apple Push Notification service (APNs) and how you can use this to send and receive information by responding to button actions when a user taps on the button. You will learn about the notification interface guidelines, which outlines the guidelines and principles that you need to follow when designing your notifications.
Chapter 10, Image Compression and Animation, shows you how to add images to the image assets catalog, and then start to build a simple WatchKit application that showcases how to animate a series of images within the WatchKit user interface.
You'll learn about the Application Transport Security (ATS) protocol that Apple introduced with the release of iOS 9, which forces developers to provide secure connections between your Apple Watch apps that communicate over HTTPS. We will also be covering how to properly configure our Apple WatchKit extension, as well as learn the best ways of handling and compressing large image files when these are downloaded from an external website so to increase performance.
Chapter 11, Packaging and Deploying Your App, focuses on how to submit your application to the Apple App Store, and share your creations with the rest of the community. You'll learn how to set up your iOS development team as well as the development and distribution certificates.
Finally, you will learn how to use the Instruments application to profile your application to eliminate performance bottlenecks. You will also learn how to package your application using Xcode and deploy this to iTunes Connect so that you can download and test on your Apple Watch device.
What you need for this book
The minimum requirement for this book is an Intel-based Macintosh computer running OS X El Capitan 10.11. We will be using Xcode 7.3, which is the Integrated Development Environment (IDE) that is used to create applications for iOS, watchOS, and tvOS. Almost all projects that you will create with the help of this book will work and run on the iOS Simulator. However, some projects will require an Apple Watch and an iPhone to work correctly.
You can download the latest version of Xcode from http://developer.apple.com/xcode/.
Who this book is for
This book is intended for developers who have a working experience of application development principles on the Mac OS X and/or iOS platforms and wish to expand their knowledge to develop applications for the Apple Watch using the Swift programming language and the WatchKit framework. It is assumed that you are familiar with object-oriented programming (OOP) and have some experience with Swift.
Conventions
In this book, you will find a number of text styles that distinguish between different kinds of information. Here are some examples of these styles and an explanation of their meaning.
Code words in text, database table names, folder names, filenames, file extensions, pathnames, dummy URLs, user input, and Twitter handles are shown as follows: Launch the Keychain Access application, which can be found in the /Applications/Utilities folder.
A block of code is set as follows:
Override func willActivate() {
Super.willActivate()
guessLabel.setText("Your Guess is: + String(Int(yourGuess)))
guessLabel.setTextColor(UIColor.yellowColor())
}
When we wish to draw your attention to a particular part of a code block, the relevant lines or items are set in bold:
// Method to handle the Encryption
func encryptString(str: String, withPassword password: String) throws -> String {
guard password.characters.count > 0 else { throw EncryptionError.Empty } guard password.characters.count >= 5 else { throw EncryptionError.Short }
// Begin constructing our encrypted string
let encrypted = password + str + password
return String(encrypted.characters.reverse())
}
New terms and important words are shown in bold. Words that you see on the screen, for example, in menus or dialog boxes, appear in the text like this: "To