SlideShare una empresa de Scribd logo
1 de 14
Descargar para leer sin conexión
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

Más contenido relacionado

La actualidad más candente

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
 

La actualidad más candente (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 a 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
 

Similar a 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
 

Más de 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
 

Más de 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
 

Último

Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 

Último (20)

Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 

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