SlideShare a Scribd company logo
Push notifications on Nokia X
NOKIA X
PLATFORM
DIFFERENTIATORS
NOKIA NOTIFICATIONS
• Nokia Notifications enables real-time push
notifications to your application running on Nokia
X software platform.
• Notification is a message that is sent from a
specific notification service to an application
installed on the device.
• Nokia Notifications API consists of two parts:
Nokia Notifications Client API (Client API) is the
Java API enabling an application to register to a
service, and receive and handle notifications.
• Nokia Notifications Service API (Service API)
defines the communication method between a
3rd party service and Nokia Notifications service.
NOKIA NOTIFICATIONS (I)
• The process of receiving notifications is straightforward. The
application, implementing Client API, registers itself for
receiving notifications by sending service specific sender
identification (sender ID) to Nokia Notifications server.
• Nokia Notifications server responds by sending a device
specific registration identification (registration ID, RID) to the
client device.
• The client application then provides the RID for the 3rd party
server, which implements Service API.
• Finally, the 3rd party server can send notifications, via Nokia
Notifications server, for the devices whose registration ID it
knows. It is the responsibility of the developer to implement
a) client application with Client API and b) server with
Service API.
NOKIA NOTIFICATIONS (II)
NOKIA X
PLATFORM
DIFFERENTIATOR
SPORTING C2DM/GCM
APPLICATION TO USE NOKIA
NOTIFICATIONS
NOKIANOTIFICATIONSAPI MATCHING THE C2DM / GCM
• Client API:
• Matching push notification APIs
• Intent based API to:
• register/unregister in device to receive notifications and
• receive notifications with payload
• Nokia Notifications helper library to use the Intent based API
• Registering the application: com.nokia.pushnotifications.REGISTER
• Unregistering the application: com.nokia.pushnotifications.UNREGISTER
• Receiving registration ID: com.nokia.pushnotifications.intent.REGISTRATION
• Receiving notifications with payload: com.nokia.pushnotifications.RECEIVE
• Server API:
• Support for 4kB payload
• 100 message buffer in server + notification of flushing the buffer
• HTTP API that supports JSON (matching the GCM server API)
• dry_run parameter allowing developers to test their request without actually sending a message
NOT SUPPORTED BY NOKIANOTIFICATIONSAPI
• Service statistics for developer
• User specific notifications, which provides a mapping between a user and instances of an app running on multiple
devices owned by the user
• Receiving messages from multiple senders, e.g. a news application receiving messages from multiple sources
• Bidirectional XMPP protocol based communication (new in CCS)
• Some optional server API parameters:
• restricted_package_name: A string containing the package name of your application. When set, the messages
will only be sent to registration IDs that match the package name.
• collapse_key: For collapsing group of the notifications
• notification_key: For sending the notification to multiple devices of the one user
• delay_while_idle: To prevent the notification sending to the idle device. The notification is delivered next time,
when the device is active.
DIFFERENCES IN NAMESPACES
General differences in namespaces
Intent and permission names
PORTINGAPPROACHES FOR THE CLIENTAPP (I)
Before you can start using Nokia Notifications API, you need to register a Sender ID from Nokia Notification developer
console. Porting your existing GCM application to use Nokia Notifications can be done roughly by two different
approaches:
1. If your application utilises the GCM helper library (gcm.jar), you can take in use the Nokia Notifications helper library
which implements a similar API.
2. If your application utilises C2DM/GCM Intent API, you need to replace the namespaces of intent actions and
permissions to match those defined in Nokia Notifications API.
You can also abstract the notifications specific code in your app or use an adaptive, dynamic approach to incorporate
both Google services and Nokia Notifications in a single application.
PORTINGAPPROACHES FOR THE CLIENTAPP (II)
Despite the approach you choose, any C2DM or GCM application that is modified to use Nokia Notifications needs
following basic changes:
1. Change sender ID from Google API project number or account name to Nokia Notifications sender ID
• To acquire the Nokia Notifications Sender ID you need a Nokia Developer Account to access the Nokia
Notifications developer console.
2. Make sure that application's own service knows how to send notifications to applications associated with a specific
Nokia Notifications registration IDs
• Your service has to use the Nokia Notifications Server API to send push notifications to devices using Nokia
Notifications so you should either:
• modify the service to only use the Nokia Notifications Server API, or
• add some metadata to the registration ID so that the service knows which service each ID is associated
with.
PORTING THE SERVER SIDE IMPLEMENTATION
Porting the server implementation is quite straightforward. The minimum set of changes include:
Changing the API key and
URI to https://nnapi.ovi.com/nnapi/2.0/send
NOKIA X
PLATFORM
DEMO
NOTIFICATIONS API
DEVELOPER CONSOLE FOR
NOKIA X DEVICES
Nokia X website
http://developer.nokia.com/nokia-x
Code samples
http://developer.nokia.com/resources/code-sample/capture-the-flag-v1.0
Capture the Flag game is a Nokia example application demonstrating the use of Nokia services on Nokia X software platform:
HERE Maps, Nokia Notifications and Nokia In-App Payment.
Nokia X Tutorials (video clips)
http://www.youtube.com/playlist?list=PLuc1ZjZXgzePUQmR9X8p59pe629668ACy
DEVELOPER RESOURCES
Thanks!
Michael Samarin
Director,
Developer Training and Evangelism
Futurice
@MichaelSamarin

More Related Content

What's hot

Apple push notification service
Apple push notification serviceApple push notification service
Apple push notification service
Ashokkumar kandasamy
 
LINE 區塊鏈平台及代幣經濟 - LINK Chain及LINK介紹
LINE 區塊鏈平台及代幣經濟 - LINK Chain及LINK介紹LINE 區塊鏈平台及代幣經濟 - LINK Chain及LINK介紹
LINE 區塊鏈平台及代幣經濟 - LINK Chain及LINK介紹
LINE Corporation
 
LINE Things - LINE IoT平台新技術分享
LINE Things - LINE IoT平台新技術分享LINE Things - LINE IoT平台新技術分享
LINE Things - LINE IoT平台新技術分享
LINE Corporation
 
日本開發者大會短講分享
日本開發者大會短講分享日本開發者大會短講分享
日本開發者大會短講分享
LINE Corporation
 
LINE Platform API Update - 打造一個更好的Chatbot服務
LINE Platform API Update - 打造一個更好的Chatbot服務LINE Platform API Update - 打造一個更好的Chatbot服務
LINE Platform API Update - 打造一個更好的Chatbot服務
LINE Corporation
 
The Datacenter API
The Datacenter APIThe Datacenter API
The Datacenter API
Akana
 
Workflows in WSO2 API Manager - WSO2 API Manager Community Call (12/15/2021)
Workflows in WSO2 API Manager - WSO2 API Manager Community Call (12/15/2021)Workflows in WSO2 API Manager - WSO2 API Manager Community Call (12/15/2021)
Workflows in WSO2 API Manager - WSO2 API Manager Community Call (12/15/2021)
WSO2
 
GOAppZone Data Sheet
GOAppZone Data SheetGOAppZone Data Sheet
GOAppZone Data Sheetykaralis
 
How to Build, Manage, and Promote APIs
How to Build, Manage, and Promote APIsHow to Build, Manage, and Promote APIs
How to Build, Manage, and Promote APIsWSO2
 
Mobile DevOps for Mobile App Excellence
Mobile DevOps for Mobile App ExcellenceMobile DevOps for Mobile App Excellence
Mobile DevOps for Mobile App Excellence
Alex Gaber
 
Session on API auto scaling, monitoring and Log management
Session on API auto scaling, monitoring and Log managementSession on API auto scaling, monitoring and Log management
Session on API auto scaling, monitoring and Log management
pqrs1234
 
OIS Roadmap
OIS RoadmapOIS Roadmap
OIS Roadmap
ForgeRock
 
Customisation Options in Linnworks.net
Customisation Options in Linnworks.netCustomisation Options in Linnworks.net
Customisation Options in Linnworks.net
Linnworks
 
Mobile DevOps
Mobile DevOpsMobile DevOps
Mobile DevOps
Apteligent
 
Cloud Foundry Summit 2014: Introducing Cloud Foundry Integration for Eclipse
Cloud Foundry Summit 2014: Introducing Cloud Foundry Integration for EclipseCloud Foundry Summit 2014: Introducing Cloud Foundry Integration for Eclipse
Cloud Foundry Summit 2014: Introducing Cloud Foundry Integration for Eclipse
dmbtr3
 
Azetone: Mobile A/B Testing & Personalization
Azetone: Mobile A/B Testing & Personalization Azetone: Mobile A/B Testing & Personalization
Azetone: Mobile A/B Testing & Personalization
Philippe Dumont
 
Introducing Appcelerator's Open Mobile Marketplace
Introducing Appcelerator's Open Mobile MarketplaceIntroducing Appcelerator's Open Mobile Marketplace
Introducing Appcelerator's Open Mobile Marketplace
Axway Appcelerator
 
SDP Global Summit 2013
SDP Global Summit 2013SDP Global Summit 2013
SDP Global Summit 2013Martin Prosek
 

What's hot (19)

Push Notification
Push NotificationPush Notification
Push Notification
 
Apple push notification service
Apple push notification serviceApple push notification service
Apple push notification service
 
LINE 區塊鏈平台及代幣經濟 - LINK Chain及LINK介紹
LINE 區塊鏈平台及代幣經濟 - LINK Chain及LINK介紹LINE 區塊鏈平台及代幣經濟 - LINK Chain及LINK介紹
LINE 區塊鏈平台及代幣經濟 - LINK Chain及LINK介紹
 
LINE Things - LINE IoT平台新技術分享
LINE Things - LINE IoT平台新技術分享LINE Things - LINE IoT平台新技術分享
LINE Things - LINE IoT平台新技術分享
 
日本開發者大會短講分享
日本開發者大會短講分享日本開發者大會短講分享
日本開發者大會短講分享
 
LINE Platform API Update - 打造一個更好的Chatbot服務
LINE Platform API Update - 打造一個更好的Chatbot服務LINE Platform API Update - 打造一個更好的Chatbot服務
LINE Platform API Update - 打造一個更好的Chatbot服務
 
The Datacenter API
The Datacenter APIThe Datacenter API
The Datacenter API
 
Workflows in WSO2 API Manager - WSO2 API Manager Community Call (12/15/2021)
Workflows in WSO2 API Manager - WSO2 API Manager Community Call (12/15/2021)Workflows in WSO2 API Manager - WSO2 API Manager Community Call (12/15/2021)
Workflows in WSO2 API Manager - WSO2 API Manager Community Call (12/15/2021)
 
GOAppZone Data Sheet
GOAppZone Data SheetGOAppZone Data Sheet
GOAppZone Data Sheet
 
How to Build, Manage, and Promote APIs
How to Build, Manage, and Promote APIsHow to Build, Manage, and Promote APIs
How to Build, Manage, and Promote APIs
 
Mobile DevOps for Mobile App Excellence
Mobile DevOps for Mobile App ExcellenceMobile DevOps for Mobile App Excellence
Mobile DevOps for Mobile App Excellence
 
Session on API auto scaling, monitoring and Log management
Session on API auto scaling, monitoring and Log managementSession on API auto scaling, monitoring and Log management
Session on API auto scaling, monitoring and Log management
 
OIS Roadmap
OIS RoadmapOIS Roadmap
OIS Roadmap
 
Customisation Options in Linnworks.net
Customisation Options in Linnworks.netCustomisation Options in Linnworks.net
Customisation Options in Linnworks.net
 
Mobile DevOps
Mobile DevOpsMobile DevOps
Mobile DevOps
 
Cloud Foundry Summit 2014: Introducing Cloud Foundry Integration for Eclipse
Cloud Foundry Summit 2014: Introducing Cloud Foundry Integration for EclipseCloud Foundry Summit 2014: Introducing Cloud Foundry Integration for Eclipse
Cloud Foundry Summit 2014: Introducing Cloud Foundry Integration for Eclipse
 
Azetone: Mobile A/B Testing & Personalization
Azetone: Mobile A/B Testing & Personalization Azetone: Mobile A/B Testing & Personalization
Azetone: Mobile A/B Testing & Personalization
 
Introducing Appcelerator's Open Mobile Marketplace
Introducing Appcelerator's Open Mobile MarketplaceIntroducing Appcelerator's Open Mobile Marketplace
Introducing Appcelerator's Open Mobile Marketplace
 
SDP Global Summit 2013
SDP Global Summit 2013SDP Global Summit 2013
SDP Global Summit 2013
 

Similar to Push notifications on Nokia X

Membuat aplikasi nokia x untuk pemula
Membuat aplikasi nokia x untuk pemulaMembuat aplikasi nokia x untuk pemula
Membuat aplikasi nokia x untuk pemulaYudi Herdiana
 
Push to Me: Mobile Push Notifications (Zend Framework)
Push to Me: Mobile Push Notifications (Zend Framework)Push to Me: Mobile Push Notifications (Zend Framework)
Push to Me: Mobile Push Notifications (Zend Framework)
Mike Willbanks
 
API Management _ Unified.cc by 500apps.pdf
API Management _ Unified.cc by 500apps.pdfAPI Management _ Unified.cc by 500apps.pdf
API Management _ Unified.cc by 500apps.pdf
JamesToddSmith1
 
Introduction to Nokia Asha software platform 1.0
Introduction to Nokia Asha software platform 1.0Introduction to Nokia Asha software platform 1.0
Introduction to Nokia Asha software platform 1.0
Microsoft Mobile Developer
 
How SignalR Can Simplify Your Messaging Needs? | Virtuoso Infotech
How SignalR Can Simplify Your Messaging Needs? | Virtuoso InfotechHow SignalR Can Simplify Your Messaging Needs? | Virtuoso Infotech
How SignalR Can Simplify Your Messaging Needs? | Virtuoso Infotech
VirtuosoInfotech
 
Connecting Xamarin Apps with IBM Worklight in Bluemix
Connecting Xamarin Apps with IBM Worklight in BluemixConnecting Xamarin Apps with IBM Worklight in Bluemix
Connecting Xamarin Apps with IBM Worklight in Bluemix
IBM
 
WEB API Gateway
WEB API GatewayWEB API Gateway
WEB API Gateway
Kumaresh Chandra Baruri
 
ACDKOCHI19 - Enterprise grade security for web and mobile applications on AWS
ACDKOCHI19 - Enterprise grade security for web and mobile applications on AWSACDKOCHI19 - Enterprise grade security for web and mobile applications on AWS
ACDKOCHI19 - Enterprise grade security for web and mobile applications on AWS
AWS User Group Kochi
 
Api management update for optus
Api management update for optusApi management update for optus
Api management update for optussflynn073
 
A journey in the API Economy - Riccardo Pulcini - Codemotion Rome 2018
A journey in the API Economy - Riccardo Pulcini - Codemotion Rome 2018A journey in the API Economy - Riccardo Pulcini - Codemotion Rome 2018
A journey in the API Economy - Riccardo Pulcini - Codemotion Rome 2018
Codemotion
 
amazon-cognito-auth-in-minutes
amazon-cognito-auth-in-minutesamazon-cognito-auth-in-minutes
amazon-cognito-auth-in-minutesVladimir Budilov
 
Mobile Push Notifications
Mobile Push NotificationsMobile Push Notifications
Mobile Push Notifications
Mike Willbanks
 
Microservices
MicroservicesMicroservices
Microservices
Ramesh (@Mavuluri)
 
ClouDesire @ Italian DevOps Initiative 2013 #idi2013
ClouDesire @ Italian DevOps Initiative 2013 #idi2013ClouDesire @ Italian DevOps Initiative 2013 #idi2013
ClouDesire @ Italian DevOps Initiative 2013 #idi2013
Giovanni Toraldo
 
Building Secure Mobile APIs
Building Secure Mobile APIsBuilding Secure Mobile APIs
Building Secure Mobile APIs
Amazon Web Services
 
Push_notifikacije_na_Azureu[1]
Push_notifikacije_na_Azureu[1]Push_notifikacije_na_Azureu[1]
Push_notifikacije_na_Azureu[1]Ivan Marković
 
OpenID Foundation MODRNA WG Overview
OpenID Foundation MODRNA WG OverviewOpenID Foundation MODRNA WG Overview
OpenID Foundation MODRNA WG Overview
Bjorn Hjelm
 
Leveraging Zend Framework for Sending Push Notifications
Leveraging Zend Framework for Sending Push NotificationsLeveraging Zend Framework for Sending Push Notifications
Leveraging Zend Framework for Sending Push NotificationsMike Willbanks
 
Cloud Kiosk Service Automation Tool for Microsoft Cloud Solution Providers
Cloud Kiosk Service Automation Tool for Microsoft Cloud Solution ProvidersCloud Kiosk Service Automation Tool for Microsoft Cloud Solution Providers
Cloud Kiosk Service Automation Tool for Microsoft Cloud Solution Providers
Daniel Moore
 
WSO2 Ecosystem platform for Connected Telco
WSO2 Ecosystem platform for Connected TelcoWSO2 Ecosystem platform for Connected Telco
WSO2 Ecosystem platform for Connected Telco
Mifan Careem
 

Similar to Push notifications on Nokia X (20)

Membuat aplikasi nokia x untuk pemula
Membuat aplikasi nokia x untuk pemulaMembuat aplikasi nokia x untuk pemula
Membuat aplikasi nokia x untuk pemula
 
Push to Me: Mobile Push Notifications (Zend Framework)
Push to Me: Mobile Push Notifications (Zend Framework)Push to Me: Mobile Push Notifications (Zend Framework)
Push to Me: Mobile Push Notifications (Zend Framework)
 
API Management _ Unified.cc by 500apps.pdf
API Management _ Unified.cc by 500apps.pdfAPI Management _ Unified.cc by 500apps.pdf
API Management _ Unified.cc by 500apps.pdf
 
Introduction to Nokia Asha software platform 1.0
Introduction to Nokia Asha software platform 1.0Introduction to Nokia Asha software platform 1.0
Introduction to Nokia Asha software platform 1.0
 
How SignalR Can Simplify Your Messaging Needs? | Virtuoso Infotech
How SignalR Can Simplify Your Messaging Needs? | Virtuoso InfotechHow SignalR Can Simplify Your Messaging Needs? | Virtuoso Infotech
How SignalR Can Simplify Your Messaging Needs? | Virtuoso Infotech
 
Connecting Xamarin Apps with IBM Worklight in Bluemix
Connecting Xamarin Apps with IBM Worklight in BluemixConnecting Xamarin Apps with IBM Worklight in Bluemix
Connecting Xamarin Apps with IBM Worklight in Bluemix
 
WEB API Gateway
WEB API GatewayWEB API Gateway
WEB API Gateway
 
ACDKOCHI19 - Enterprise grade security for web and mobile applications on AWS
ACDKOCHI19 - Enterprise grade security for web and mobile applications on AWSACDKOCHI19 - Enterprise grade security for web and mobile applications on AWS
ACDKOCHI19 - Enterprise grade security for web and mobile applications on AWS
 
Api management update for optus
Api management update for optusApi management update for optus
Api management update for optus
 
A journey in the API Economy - Riccardo Pulcini - Codemotion Rome 2018
A journey in the API Economy - Riccardo Pulcini - Codemotion Rome 2018A journey in the API Economy - Riccardo Pulcini - Codemotion Rome 2018
A journey in the API Economy - Riccardo Pulcini - Codemotion Rome 2018
 
amazon-cognito-auth-in-minutes
amazon-cognito-auth-in-minutesamazon-cognito-auth-in-minutes
amazon-cognito-auth-in-minutes
 
Mobile Push Notifications
Mobile Push NotificationsMobile Push Notifications
Mobile Push Notifications
 
Microservices
MicroservicesMicroservices
Microservices
 
ClouDesire @ Italian DevOps Initiative 2013 #idi2013
ClouDesire @ Italian DevOps Initiative 2013 #idi2013ClouDesire @ Italian DevOps Initiative 2013 #idi2013
ClouDesire @ Italian DevOps Initiative 2013 #idi2013
 
Building Secure Mobile APIs
Building Secure Mobile APIsBuilding Secure Mobile APIs
Building Secure Mobile APIs
 
Push_notifikacije_na_Azureu[1]
Push_notifikacije_na_Azureu[1]Push_notifikacije_na_Azureu[1]
Push_notifikacije_na_Azureu[1]
 
OpenID Foundation MODRNA WG Overview
OpenID Foundation MODRNA WG OverviewOpenID Foundation MODRNA WG Overview
OpenID Foundation MODRNA WG Overview
 
Leveraging Zend Framework for Sending Push Notifications
Leveraging Zend Framework for Sending Push NotificationsLeveraging Zend Framework for Sending Push Notifications
Leveraging Zend Framework for Sending Push Notifications
 
Cloud Kiosk Service Automation Tool for Microsoft Cloud Solution Providers
Cloud Kiosk Service Automation Tool for Microsoft Cloud Solution ProvidersCloud Kiosk Service Automation Tool for Microsoft Cloud Solution Providers
Cloud Kiosk Service Automation Tool for Microsoft Cloud Solution Providers
 
WSO2 Ecosystem platform for Connected Telco
WSO2 Ecosystem platform for Connected TelcoWSO2 Ecosystem platform for Connected Telco
WSO2 Ecosystem platform for Connected Telco
 

More from Microsoft Mobile Developer

Lumia App Labs: Lumia SensorCore SDK beta
Lumia App Labs: Lumia SensorCore SDK betaLumia App Labs: Lumia SensorCore SDK beta
Lumia App Labs: Lumia SensorCore SDK beta
Microsoft Mobile Developer
 
Nokia Asha from idea to app - Imaging
Nokia Asha from idea to app - ImagingNokia Asha from idea to app - Imaging
Nokia Asha from idea to app - Imaging
Microsoft Mobile Developer
 
Healthcare apps for Nokia X and Nokia Asha
Healthcare apps for Nokia X and Nokia AshaHealthcare apps for Nokia X and Nokia Asha
Healthcare apps for Nokia X and Nokia Asha
Microsoft Mobile Developer
 
DIY Nokia Asha app usability studies
DIY Nokia Asha app usability studiesDIY Nokia Asha app usability studies
DIY Nokia Asha app usability studies
Microsoft Mobile Developer
 
Lessons learned from Nokia X UI reviews
Lessons learned from Nokia X UI reviewsLessons learned from Nokia X UI reviews
Lessons learned from Nokia X UI reviews
Microsoft Mobile Developer
 
Location based services for Nokia X and Nokia Asha using Geo2tag
Location based services for Nokia X and Nokia Asha using Geo2tagLocation based services for Nokia X and Nokia Asha using Geo2tag
Location based services for Nokia X and Nokia Asha using Geo2tag
Microsoft Mobile Developer
 
HERE Maps for the Nokia X platform
HERE Maps for the Nokia X platformHERE Maps for the Nokia X platform
HERE Maps for the Nokia X platform
Microsoft Mobile Developer
 
Nokia In-App Payment - UX considerations
Nokia In-App Payment - UX considerationsNokia In-App Payment - UX considerations
Nokia In-App Payment - UX considerations
Microsoft Mobile Developer
 
UX considerations when porting to Nokia X
UX considerations when porting to Nokia XUX considerations when porting to Nokia X
UX considerations when porting to Nokia X
Microsoft Mobile Developer
 
Kids' games and educational app design
Kids' games and educational app designKids' games and educational app design
Kids' games and educational app design
Microsoft Mobile Developer
 
Nokia X: opportunities for developers
Nokia X: opportunities for developersNokia X: opportunities for developers
Nokia X: opportunities for developers
Microsoft Mobile Developer
 
Lumia App Labs: Nokia Imaging SDK 1.1
Lumia App Labs: Nokia Imaging SDK 1.1Lumia App Labs: Nokia Imaging SDK 1.1
Lumia App Labs: Nokia Imaging SDK 1.1
Microsoft Mobile Developer
 
Lumia App Labs: Lessons learned from 50 windows phone 8 design consultations
Lumia App Labs: Lessons learned from 50 windows phone 8 design consultationsLumia App Labs: Lessons learned from 50 windows phone 8 design consultations
Lumia App Labs: Lessons learned from 50 windows phone 8 design consultations
Microsoft Mobile Developer
 
Windows Phone 8 speech: parliamo con la nostra app
Windows Phone 8 speech: parliamo con la nostra appWindows Phone 8 speech: parliamo con la nostra app
Windows Phone 8 speech: parliamo con la nostra app
Microsoft Mobile Developer
 
La pubblicazione di un'applicazione sullo store
La pubblicazione di un'applicazione sullo storeLa pubblicazione di un'applicazione sullo store
La pubblicazione di un'applicazione sullo store
Microsoft Mobile Developer
 
Il pattern mvvm come strutturare al meglio il vostro progetto
Il pattern mvvm come strutturare al meglio il vostro progettoIl pattern mvvm come strutturare al meglio il vostro progetto
Il pattern mvvm come strutturare al meglio il vostro progetto
Microsoft Mobile Developer
 
Lens app trasformare il telefono in una fotocamera
Lens app trasformare il telefono in una fotocameraLens app trasformare il telefono in una fotocamera
Lens app trasformare il telefono in una fotocamera
Microsoft Mobile Developer
 
NFC, Bluetooth e comunicazione tra app
NFC, Bluetooth e comunicazione tra appNFC, Bluetooth e comunicazione tra app
NFC, Bluetooth e comunicazione tra app
Microsoft Mobile Developer
 
Nokia Asha webinar: Developing health-care applications for Nokia Asha phones
Nokia Asha webinar: Developing health-care applications for Nokia Asha phonesNokia Asha webinar: Developing health-care applications for Nokia Asha phones
Nokia Asha webinar: Developing health-care applications for Nokia Asha phones
Microsoft Mobile Developer
 
Connettersi al Cloud Azure Mobile Services
Connettersi al Cloud Azure Mobile ServicesConnettersi al Cloud Azure Mobile Services
Connettersi al Cloud Azure Mobile Services
Microsoft Mobile Developer
 

More from Microsoft Mobile Developer (20)

Lumia App Labs: Lumia SensorCore SDK beta
Lumia App Labs: Lumia SensorCore SDK betaLumia App Labs: Lumia SensorCore SDK beta
Lumia App Labs: Lumia SensorCore SDK beta
 
Nokia Asha from idea to app - Imaging
Nokia Asha from idea to app - ImagingNokia Asha from idea to app - Imaging
Nokia Asha from idea to app - Imaging
 
Healthcare apps for Nokia X and Nokia Asha
Healthcare apps for Nokia X and Nokia AshaHealthcare apps for Nokia X and Nokia Asha
Healthcare apps for Nokia X and Nokia Asha
 
DIY Nokia Asha app usability studies
DIY Nokia Asha app usability studiesDIY Nokia Asha app usability studies
DIY Nokia Asha app usability studies
 
Lessons learned from Nokia X UI reviews
Lessons learned from Nokia X UI reviewsLessons learned from Nokia X UI reviews
Lessons learned from Nokia X UI reviews
 
Location based services for Nokia X and Nokia Asha using Geo2tag
Location based services for Nokia X and Nokia Asha using Geo2tagLocation based services for Nokia X and Nokia Asha using Geo2tag
Location based services for Nokia X and Nokia Asha using Geo2tag
 
HERE Maps for the Nokia X platform
HERE Maps for the Nokia X platformHERE Maps for the Nokia X platform
HERE Maps for the Nokia X platform
 
Nokia In-App Payment - UX considerations
Nokia In-App Payment - UX considerationsNokia In-App Payment - UX considerations
Nokia In-App Payment - UX considerations
 
UX considerations when porting to Nokia X
UX considerations when porting to Nokia XUX considerations when porting to Nokia X
UX considerations when porting to Nokia X
 
Kids' games and educational app design
Kids' games and educational app designKids' games and educational app design
Kids' games and educational app design
 
Nokia X: opportunities for developers
Nokia X: opportunities for developersNokia X: opportunities for developers
Nokia X: opportunities for developers
 
Lumia App Labs: Nokia Imaging SDK 1.1
Lumia App Labs: Nokia Imaging SDK 1.1Lumia App Labs: Nokia Imaging SDK 1.1
Lumia App Labs: Nokia Imaging SDK 1.1
 
Lumia App Labs: Lessons learned from 50 windows phone 8 design consultations
Lumia App Labs: Lessons learned from 50 windows phone 8 design consultationsLumia App Labs: Lessons learned from 50 windows phone 8 design consultations
Lumia App Labs: Lessons learned from 50 windows phone 8 design consultations
 
Windows Phone 8 speech: parliamo con la nostra app
Windows Phone 8 speech: parliamo con la nostra appWindows Phone 8 speech: parliamo con la nostra app
Windows Phone 8 speech: parliamo con la nostra app
 
La pubblicazione di un'applicazione sullo store
La pubblicazione di un'applicazione sullo storeLa pubblicazione di un'applicazione sullo store
La pubblicazione di un'applicazione sullo store
 
Il pattern mvvm come strutturare al meglio il vostro progetto
Il pattern mvvm come strutturare al meglio il vostro progettoIl pattern mvvm come strutturare al meglio il vostro progetto
Il pattern mvvm come strutturare al meglio il vostro progetto
 
Lens app trasformare il telefono in una fotocamera
Lens app trasformare il telefono in una fotocameraLens app trasformare il telefono in una fotocamera
Lens app trasformare il telefono in una fotocamera
 
NFC, Bluetooth e comunicazione tra app
NFC, Bluetooth e comunicazione tra appNFC, Bluetooth e comunicazione tra app
NFC, Bluetooth e comunicazione tra app
 
Nokia Asha webinar: Developing health-care applications for Nokia Asha phones
Nokia Asha webinar: Developing health-care applications for Nokia Asha phonesNokia Asha webinar: Developing health-care applications for Nokia Asha phones
Nokia Asha webinar: Developing health-care applications for Nokia Asha phones
 
Connettersi al Cloud Azure Mobile Services
Connettersi al Cloud Azure Mobile ServicesConnettersi al Cloud Azure Mobile Services
Connettersi al Cloud Azure Mobile Services
 

Recently uploaded

Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
Alison B. Lowndes
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
OnBoard
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
Sri Ambati
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
Dorra BARTAGUIZ
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
Product School
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
g2nightmarescribd
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
Product School
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
Product School
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
Cheryl Hung
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
Product School
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Ramesh Iyer
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
BookNet Canada
 

Recently uploaded (20)

Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 

Push notifications on Nokia X

  • 3. • Nokia Notifications enables real-time push notifications to your application running on Nokia X software platform. • Notification is a message that is sent from a specific notification service to an application installed on the device. • Nokia Notifications API consists of two parts: Nokia Notifications Client API (Client API) is the Java API enabling an application to register to a service, and receive and handle notifications. • Nokia Notifications Service API (Service API) defines the communication method between a 3rd party service and Nokia Notifications service. NOKIA NOTIFICATIONS (I)
  • 4. • The process of receiving notifications is straightforward. The application, implementing Client API, registers itself for receiving notifications by sending service specific sender identification (sender ID) to Nokia Notifications server. • Nokia Notifications server responds by sending a device specific registration identification (registration ID, RID) to the client device. • The client application then provides the RID for the 3rd party server, which implements Service API. • Finally, the 3rd party server can send notifications, via Nokia Notifications server, for the devices whose registration ID it knows. It is the responsibility of the developer to implement a) client application with Client API and b) server with Service API. NOKIA NOTIFICATIONS (II)
  • 6. NOKIANOTIFICATIONSAPI MATCHING THE C2DM / GCM • Client API: • Matching push notification APIs • Intent based API to: • register/unregister in device to receive notifications and • receive notifications with payload • Nokia Notifications helper library to use the Intent based API • Registering the application: com.nokia.pushnotifications.REGISTER • Unregistering the application: com.nokia.pushnotifications.UNREGISTER • Receiving registration ID: com.nokia.pushnotifications.intent.REGISTRATION • Receiving notifications with payload: com.nokia.pushnotifications.RECEIVE • Server API: • Support for 4kB payload • 100 message buffer in server + notification of flushing the buffer • HTTP API that supports JSON (matching the GCM server API) • dry_run parameter allowing developers to test their request without actually sending a message
  • 7. NOT SUPPORTED BY NOKIANOTIFICATIONSAPI • Service statistics for developer • User specific notifications, which provides a mapping between a user and instances of an app running on multiple devices owned by the user • Receiving messages from multiple senders, e.g. a news application receiving messages from multiple sources • Bidirectional XMPP protocol based communication (new in CCS) • Some optional server API parameters: • restricted_package_name: A string containing the package name of your application. When set, the messages will only be sent to registration IDs that match the package name. • collapse_key: For collapsing group of the notifications • notification_key: For sending the notification to multiple devices of the one user • delay_while_idle: To prevent the notification sending to the idle device. The notification is delivered next time, when the device is active.
  • 8. DIFFERENCES IN NAMESPACES General differences in namespaces Intent and permission names
  • 9. PORTINGAPPROACHES FOR THE CLIENTAPP (I) Before you can start using Nokia Notifications API, you need to register a Sender ID from Nokia Notification developer console. Porting your existing GCM application to use Nokia Notifications can be done roughly by two different approaches: 1. If your application utilises the GCM helper library (gcm.jar), you can take in use the Nokia Notifications helper library which implements a similar API. 2. If your application utilises C2DM/GCM Intent API, you need to replace the namespaces of intent actions and permissions to match those defined in Nokia Notifications API. You can also abstract the notifications specific code in your app or use an adaptive, dynamic approach to incorporate both Google services and Nokia Notifications in a single application.
  • 10. PORTINGAPPROACHES FOR THE CLIENTAPP (II) Despite the approach you choose, any C2DM or GCM application that is modified to use Nokia Notifications needs following basic changes: 1. Change sender ID from Google API project number or account name to Nokia Notifications sender ID • To acquire the Nokia Notifications Sender ID you need a Nokia Developer Account to access the Nokia Notifications developer console. 2. Make sure that application's own service knows how to send notifications to applications associated with a specific Nokia Notifications registration IDs • Your service has to use the Nokia Notifications Server API to send push notifications to devices using Nokia Notifications so you should either: • modify the service to only use the Nokia Notifications Server API, or • add some metadata to the registration ID so that the service knows which service each ID is associated with.
  • 11. PORTING THE SERVER SIDE IMPLEMENTATION Porting the server implementation is quite straightforward. The minimum set of changes include: Changing the API key and URI to https://nnapi.ovi.com/nnapi/2.0/send
  • 13. Nokia X website http://developer.nokia.com/nokia-x Code samples http://developer.nokia.com/resources/code-sample/capture-the-flag-v1.0 Capture the Flag game is a Nokia example application demonstrating the use of Nokia services on Nokia X software platform: HERE Maps, Nokia Notifications and Nokia In-App Payment. Nokia X Tutorials (video clips) http://www.youtube.com/playlist?list=PLuc1ZjZXgzePUQmR9X8p59pe629668ACy DEVELOPER RESOURCES
  • 14. Thanks! Michael Samarin Director, Developer Training and Evangelism Futurice @MichaelSamarin