If done right, push notification can be a useful tool in the mobile application developer's bag of tricks. Quite simply, push notification is a way for a mobile application to send an alert or message to a device, even when the application is not running. It can be a great way for sending notifications about timely events. For example, a mail application can beep each time you receive new email, or you can get an alert when tickets for a concert or sporting event go on sale. Since the application does not need to be running in order to receive notifications, it reduces resource consumption and might also improve device performance.
How does it work?
A push notification is sent from a server known as a push service mediator and can be in the form of an alert (a pop-up text box), a sound alert, a badge (an indicator that appears on the application icon) or an indicator in the notification bar.
A push notification originates in the server side of a mobile application. (1) The developer defines an event source for the notifications. (2) The application server connects with the push service mediator to establish a channel for sending notifications to the client. The application prepares and sends the notification package, which includes a device ID and payload, to the push service mediator and then (3) the push service mediator pushes the notification package out to the target device.
This article describes how to develop an application that sends push notifications to iOS devices.
IBM Worklight provides a unified push notification mechanism that supports both iOS and Android devices, as well as a means of monitoring push notification activity. The push notifications tab in the IBM Worklight Console provides a quick view of the various entities in the push notification chain.
The left column displays the event sources that are configured in the Worklight Server and the number of subscribed users for each one. The right column displays the mobile applications that can receive push notifications and the number of subscribed users and devices for each application. You can learn more about using push notification with IBM Worklight here.
So, what's not to love?
Push notifications can be perceived as intrusive and annoying, especially if they contain ads or promotions, or if they are just too numerous. For that reason, some users avoid installing applications that use push notifications. Part of the problem is that users who aren't tech savvy don't know how to control or turn them off. The initial prompt that asks for permission to send push notifications might be the only opportunity they see for controlling push notifications. However, there are some things you can do to turn users on to push notifications, rather than turn them off.
- Make notifications useful and relevant to your target audience. Does it provide important news or information? Does it pertain to the user's interests? Only send notifications that your users want to receive.
- Do not use push notifications for advertising or promotions (spam). Many OS vendors, such as Apple, prohibit this practice. According to the App Store Review Guidelines:
“5.6 Apps cannot use Push Notifications to send advertising, promotions, or direct marketing of any kind”
- Carefully consider when and how often to send push notifications. Is the message urgent? Does it require immediate action from the user? Does it bear repeating?
- Provide a detailed description of the type of push notifications that the application sends so that the user knows what they are getting before they install it.
- Provide a quick way to disable push notifications from the application (IBM Worklight provides several methods for controlling push notification behavior in an application).
- Consider feedback from users on the effectiveness of push notifications (the IBM Worklight Application Center allows users to leave feedback for applications).
As a mobile device user, do you think that push notifications are useful, or not? I'm not afraid to install applications that use push notifications. I find many of them to be useful, and if they happen to annoy me, I can always uninstall them.
What about those of you who are developers? What do you think about push notification? How would you use it to improve the user experience?Megan Irvine is a WebSphere Education Course Developer/Instructor and an IBM Redbooks Thought Leader. Follow Megan Irvine on Twitter at @mirv_pgh.