SlideShare ist ein Scribd-Unternehmen logo
1 von 14
Downloaden Sie, um offline zu lesen
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

Weitere ähnliche Inhalte

Was ist angesagt?

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 APIAkana
 
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 ExcellenceAlex 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 managementpqrs1234
 
Customisation Options in Linnworks.net
Customisation Options in Linnworks.netCustomisation Options in Linnworks.net
Customisation Options in Linnworks.netLinnworks
 
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 Eclipsedmbtr3
 
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 MarketplaceAxway Appcelerator
 
SDP Global Summit 2013
SDP Global Summit 2013SDP Global Summit 2013
SDP Global Summit 2013Martin Prosek
 

Was ist angesagt? (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
 

Ähnlich wie 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.pdfJamesToddSmith1
 
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.0Microsoft 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 InfotechVirtuosoInfotech
 
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 BluemixIBM
 
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 AWSAWS 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 2018Codemotion
 
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 NotificationsMike Willbanks
 
ClouDesire @ Italian DevOps Initiative 2013 #idi2013
ClouDesire @ Italian DevOps Initiative 2013 #idi2013ClouDesire @ Italian DevOps Initiative 2013 #idi2013
ClouDesire @ Italian DevOps Initiative 2013 #idi2013Giovanni Toraldo
 
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 OverviewBjorn 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 ProvidersDaniel Moore
 
WSO2 Ecosystem platform for Connected Telco
WSO2 Ecosystem platform for Connected TelcoWSO2 Ecosystem platform for Connected Telco
WSO2 Ecosystem platform for Connected TelcoMifan Careem
 

Ähnlich wie 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
 

Mehr von 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 Geo2tagMicrosoft 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 consultationsMicrosoft 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 appMicrosoft 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 storeMicrosoft 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 progettoMicrosoft 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 fotocameraMicrosoft 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 phonesMicrosoft Mobile Developer
 

Mehr von 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
 

Kürzlich hochgeladen

#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 

Kürzlich hochgeladen (20)

#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 

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