Posts

Showing posts with the label apple

iOS 8: Creating a Custom Keyboard in Swift

Starting with iOS 8, your applications can extend custom functionality and content beyond your app, and make it available to users while they're using other apps or the operating system. One way of extending the operating system is by creating a custom keyboard. In this tutorial I'm going to show you how to make your own custom keyboard using Swift and the new app extension APIs. Before we do that, we are going to go over what a keyboard extension can do, what it can't do, and what it should to get approved for the App Store. 1. Overview A custom keyboard replaces the system keyboard for users who want capabilities, such as a novel text input method or the ability to enter text in a language not otherwise supported by the operating system. The essential function of a custom keyboard is simple, respond to taps, gestures, or other input events, and provide text in the form of an unattributed NSString object at the text insertion point of the current text input object. After a...

Distributing iOS Apps With iTunes Connect

Image
Once you've developed your iOS or OS X app, it's time to submit it to Apple for release in the App Store. This process is done through iTunes Connect, which is the portal connecting developers to the world. In this tutorial, you'll learn exactly how to distribute your apps from Xcode to the App Store using iTunes Connect. More specifically, you'll be learning about the following topics: what is iTunes Connect how to generate certificates, App IDs, and provisioning profiles how to distribute an application using iTunes Connect Apple's review process Note that you need to be a member of one of Apple's paid developer programs to create certificates and provisioning profiles, and to access iTunes Connect. 1. What is iTunes Connect? iTunes Connect is a suite of web-based tools for managing content sold on the iTunes Store, App Store, Mac App Store, and iBooks Store. As a member of the iOS Developer Program or Mac Developer Program, you'll use this tool to manage ...

Getting Up to Speed With Xcode 6

Image
Each release of Xcode presents developers with enhanced tools to help building their apps. This year's release, Xcode 6, introduces new ways for developers to design and build their software. In this tutorial, I'll outline the new and improved features in Xcode 6 and take a look at how you can use them. 1. Playgrounds During this year's WWDC, Apple introduced Swift, a new programming language for developing software for its devices. In line with this, Xcode 6 comes with a new feature called Playgrounds that provides an interactive work area where developers can write Swift code and get live feedback without having to run the code on a device or simulator. This is a nice addition to Xcode as you can now experiment with code and get quick, real-time results before incorporating it into your main code base. 2. Interface Builder A major topic at this year's WWDC was building adaptive applications. Instead of building applications that target specific screen sizes, developer...

Introduction to Testing on iOS

Image
No one wants to ship buggy software. Ensuring that you release a mobile application of the highest quality requires much more than a human-driven manual quality assurance process. New devices and operating systems are released to the public each year. This means that there is an ever expanding combination of screen sizes and operating system versions on which you must test your mobile application. Not only would it be extremely time consuming, but attempting to test your iOS application by manual testing neglects an entire piece of the modern software engineering process, automated quality assurance testing. In todayĆ¢€™s world, there are many tools available that can be used to automatically test the software you write. Some of these tools are maintained through an open source model, but there is also a core set provided by Apple. With each new release of the iOS SDK, Apple has continued to show their commitment towards improving the tools available for developers to te...

Setting Up Push Notifications on iOS

Image
Introduction Apple originally introduced push notifications to enable applications to respond to events if the application isn't running in the foreground. However, the operating system and iOS devices have changed significantly during the past few years and applications don't need to rely solely on push notifications to perform tasks in the background. This doesn't mean that push notifications are no longer useful though. Push notifications are great to notify an application about important events and to keep your application's users engaged. Also, don't forget that an application still isn't allowed to run in the background without restrictions. In other words, the original purpose of push notifications is still valid. Even the most experienced iOS developers scratch their heads from time to time when they have to deal with application provisioning. Unfortunately, push notifications add to this complexity. With this tutorial, I hope to show you that setting up...