We’ve just launched a new service, called PushLayer, that makes sending push notifications to iOS devices a breeze.
Over the years, we’ve worked on quite a few iOS apps, and more than a few have had to deal with push notifications in one form or another. Unfortunately, dealing with device tokens and communicating with Apple’s Push Notification Service (APNS) is cumbersome, very time consuming, and isn’t tolerant of mistakes.
In the past, we’ve tried using one of the other services out there, but have been very frustrated when we couldn’t effectively debug notifications that weren’t delivered (in fact, on one of our most recent projects, we went months without getting any notifications from our staging builds). We were also always mystified by pricing based on “active” devices.
We’ve also tried rolling our own system for communicating with Apple and managing device tokens. While this gave us the best flexibility in terms of debugging, it required several weeks of intensive development time, and was not forgiving of mistakes (for instance, Apple will blacklist sending notifications if you don’t properly monitor their feedback API). It also leaves us with a long-term commitment to ensuring we update our code to any changes Apple rolls out.
So we come to PushLayer, a service we’ve been working on over the last few months, that makes sending iOS push notifications about as simple as it gets. For instance, to send a notification, you just:
- On the iOS device, prompt the user to enable push notifications. If the user accepts, iOS gives you a unique device token.
- Store this token someplace safe (such as on your own server as you’ll need to reference it when you want to send a notification).
- Send a POST request to PushLayer using our handy RESTful API, referencing the device token you got in step #1. For testing purposes, you can even login and use our handy interface for constructing a notification.
That’s it! PushLayer communicates with Apple, constructs the binary payload, and the notification pops up on the device usually within a few moments.
PushLayer has a number of compelling features we wish we had when we were last working with APNS:
- Every notification gets an entry in your PushLayer account, allowing you to drill into what the status of each notification actually is.
- Save time by not having to roll your own communication system with APNS (and avoid having to maintain it later).
- Pay for the actual notifications you send rather than some vague concept of “active” devices, with prices significantly below other services out there.
If you’ve been thinking of adding push notifications to your iOS apps, give PushLayer a try. It’ll save you a ton of time.