Production iOS Push Notifications with AWS Simple Notification Service

In this post we’ll be setting up Amazon Web Services (AWS) to handle the delivery of push notifications to the Apple Push Notification Service (APNS) and eventually to your users. In order to use AWS to push notifications to your users devices you’ll configure three different AWS Services; Cognito, Identity and Access Management (IAM), and … Read More

TechCast #109 – Rob Napier on Swift

In this episode, Chariot’s Ken Rimple speaks to upcoming Philly ETE speaker Rob Napier, author of the RNCryptor encryption format and co-author of iOS Programming, Pushing the Limits. They discuss the evolution of the Swift language. His talk, Generic Swift: It Isn’t Supposed to Hurt, covers how to properly develop code using Generics in Swift. … Read More

Mobile App Development: Consider the Cost, Not Just the Price!

Introduction When we are talking to customers, either new or existing, we often get asked about the best way to develop mobile apps for both Android and iOS. For many years the options were native versus hybrid. More recently these options have become more complex. The typical reason we get asked this question is that … Read More

UITableView Swipe Actions in iOS 11

Overview One of the new but little discussed APIs in iOS 11 allows the addition of swipe actions on UITableView rows via the new UISwipeActionsConfiguration class and associated UITableViewDelegate methods. Adding swipe left or swipe right actions is now pretty simple, so lets just dive right in. To try out these new APIs, a very … Read More

NSAttributedString Enhancements in iOS 11

Attributed strings can be a pain to configure the way you want them. The attributes dictionary has always been a dictionary comprised of String-Any pairs. There have been some nice enhancments in iOS 11, though.

Large Titles For Navigation Bars In iOS 11

If you have played with iOS 11 either on a simulator or on a real device, you have probably noticed that most of the first party apps, such as Mail and Settings, use large titles in the navigation bar. We are going to look at how to implement the same navigation bar behavior in our apps.

Changing your iOS App Icon programatically

When iOS 10.3 was released, Apple opened up an API to allow developers to change the app icon for their app programatically. Of course this doesn’t mean you can change it every second like the Clock app, or even every day like the Calendar app. What you can do is change the app icon when … Read More

Handling Keyboard Shortcuts In iOS

The keyboard is an enormously important piece of hardware. The keyboard lets us increase efficiency while using an app by typing faster. It also gives iOS apps the ability to support shortcuts, which increases productivity even more. Common tasks for apps would be greatly benefited by allowing shortcuts, especially on an iPad, by allowing the user to keep their hands on the keyboard.

Layout Anchors

This screencast demonstrates how to use Layout Anchors. Layout Anchors are a way of creating NSLayoutConstraints in code that are simpler and easier to read than creating NSLayoutConstraints directly. In this screencast a simple screen that is completely laid out in code is updated to use Layout Anchors.

Enabling Siri Integration With SiriKit

SiriKit was created for developers in iOS 10. However, there were, and still are, a limited number of intent domains with which you can integrate an app. An intent domain is simply a category of app that can take advantage of Siri. With the release of iOS 11, a few new domains are being made available. This tutorial will walk through implementing SiriKit with the “Lists and Notes” domain, although, the core concepts can be applied to any domain.