You will learn to extend your knowledge of making iOS apps so that they can securely interact with web services and receive push notifications. You'll learn how to store data securely on a device using Core Data. You’ll also learn to securely deploy apps to the App Store and beta users over-the-air.
The format of the course is through a series of code tutorials. We will walk you through the creation of several apps that you can keep as a personal app toolbox. When you make your own apps after this course, you can bring in these capabilities as needed. When necessary we pop out of the code tutorials to talk about concepts at a higher level so that what you are programming makes sense.
Upon completing this course, you will be able to:
1. Post Facebook, Twitter, Sina Weibo, Tencent Weibo messages to social media using single sign-on on behalf of a user.
2. Use OAuth 2.0 to securely authenticate to Instagram and retrieve photos on behalf of a user
3. JSON
4. Describe JSON’s syntax
5. Write well-formed JSON
6. Work with JSON data objects in Objective-C
7. Appropriately set the security settings for App Transport Security in iOS 9.0
8. Use http, https and https with perfect forward secrecy to fetch web resources
9. Obtain permissions to receive local push notifications
11. Write an app that can send and receive local push notifications
12. Obtain permissions to receive remote push notifications
13. Write an app that can receive remote push notifications
14. Authenticate using Apple’s cryptographic services such that the developer can use 3rd party infrastructure to send remote push notifications to their app.
15. Securely store data on the user’s device.
16. Authenticate using Apple’s cryptographic services such that they can deploy an app to the app store

From the lesson

Don't be so pushy!

In this week we will look at several aspects of push notifications. Those are those alerts that show up at the top of your iOS interface when an app wants to get your attention. There are several ways that they can be initiated. They can be initiated from an app on a local device, or they can be initiated by a remote server somewhere on the internet. Obtaining permission to post those notifications requires lots of steps, certificates, passwords etc. We'll walk you through it all. This week we start with a high-level overview of the iOS app lifecycle. Then we will do three code tutorials. The first will be the one that you will need to do the peer-review assessment. It's a basic countdown timer that sends a notification at a specific time. The second will show you how to make it all fancy with custom actions. The final one will be for remote notifications. Since remote notifications require an Apple developer account ($$$) we won't assess you on it, but if you have one you can try it out on your own and add it to your personal app toolbox.