SlideShare ist ein Scribd-Unternehmen logo
1 von 19
Downloaden Sie, um offline zu lesen
SOCIAL SHARING USING
NOKIA ASHA SDK 1.1
(BETA)
Pranav Gothadiya
Product Owner
Nokia Asha SDK
pranav.gothadiya@nokia.com
CONTENTS
•
•
•
•

•
•
•

Introduction to Social Sharing
What is Share API?
Using Share API
Application development using Share API
- Share contents from MIDlet
- Share contents from other apps
- Fastlane integration
Oauth 2.0
Emoji Support
Additional Information
INTRODUCTION TO SOCIAL SHARING
•
•
•
•

Sharing content with social media
Built-in feature of Share API through content handler
Oauth 2.0 based authentication support
Use unicode base emoticons in content sharing
WHAT IS SHARE API ?
•
•
•
•

Its a convenient overlay to JSR-211 for simple social sharing
of content
Platform implements this social sharing support
Content handled either by content type/content handler ID
Application development:
- Implementing source for sharing
- Implementing destination for sharing
APPLICATION SIDE IMPLEMENTATION
Code snippet:
String[] args = new String[]{"text=" + this.sharedText.getString()};
String mime = "text/plain";
Registry registry = Registry.getRegistry(this.getClass().getName());
Invocation invocation = new Invocation(null, mime, "com.nokia.share");
invocation.setAction("share");
invocation.setArgs(args);
invocation.setResponseRequired(false);
registry.invoke(invocation);
SUPPORTED ARGUMENTS
•

url: url
-

The url to the file that is being shared (many supported) n
This is used when the shared items are files

String[] args = new String[]{“url=file:///Phone/_my_picture/img1.png"};
SUPPORTED ARGUMENTS
•

url: url
-

•

The url to the file that is being shared (many supported) n. This is used
when the shared items are files

text: text
-

Textual content that is being shared
This is used when the shared items are texts

String[] args =
new String[]{"text=file:///Phone/_my_picture/img1.png"};
SUPPORTED ARGUMENTS
•

url: url
-

•

The url to the file that is being shared (many supported) n. This is
used when the shared items are files

text: text
-

Textual content that is being shared. This is used when the shared
items are texts

For Fastlane integration
• id
-

A unique identifier of the share transaction.
It can be stored for future reference.
Used with “open-shared” action.
SUPPORTED SHARE TYPES
Following mime types can be registered:
•
•
•
•

image/* or specific image types
audio/* or specific audio types
video/* or specific video types
text/plain type

“No limit on size or types by the Share API, but there might be limitations on the individual share
destinations”
SHARE CONTENTS FROM MIDLET
•
•
•
•
•

Generate arguments to pass content
Specify mime type of the content
Get content handler Registry
Create invocation
Invoke
SHARE CONTENTS FROM OTHER APPLICATIONS
•
•
•
•
•

Make JAD entry for content handler
Create ContentHandlerServer
Get Invocation from content handler server
Get the arguments (content)
Use content to share
CONTENT INVOCATION
Content can be invoked from following native apps:
• Sharing link and bookmark from Browser
• Sharing files from:
- Gallery
- Music player
- Video player
- Camera
• Sharing contacts and calendars
FAST LANE INTEGRATION
•
•
•

Destination must register to action "open-shared“
Destination can deep link the user into the right view
Fastlane item is added if the destination returns with Invocation.OK
handler.finish(invocation, Invocation.OK);

•

Fastlane item is added if the destination returns Invocation.CANCELLED and quit
contentHandlerServer.finish(invocation, Invocation.CANCELLED);

•

Share UI considers that sharing has ended, but does not create a Fastlane item
because the sharing was not completed
contentHandlerServer.finish(invocation, Invocation. INITIATED);
OAUTH 2.0 SUPPORT
•
•
•
•
•

Allows to access server resources on behalf of the resource owner
Secure open authorization protocol
Authentication handled by Nokia browser
Invocation happens through Content Handler
Browser
- Performs Oauth 2.0 based authentication
- Get back the access token
- MIDlet app to use that access token further
OAUTH 2.0 IMPLEMENTATION

22 November 2013 / Slide no 15
EMOJI SUPPORT
•
•
•

•

•

Japanese term which represents a picture
It expresses an visual/idea in messaging
Standard Unicode set:
- Large number of emoji chars
- Range: U+1F300 to 1F64F
Surrogate pair:
- Maps an emoji character to a pictograph
- Nokia Asha Platform has built-in implementation
Back to UTF16 char:
- While reading the char from Java text component
EMOJI SUPPORT - IMPLEMENTATION
•

Constants

•

Create surrogate par from Unicode character

•

Get Unicode character back from surrogate pair
MORE INFORMATION
Overview
- http://developer.nokia.com/Develop/asha/java/start/
Downloads
- http://developer.nokia.com/Develop/asha/java/tools.xhtml
- http://projects.developer.nokia.com/LWUIT_for_Series_40
Guides
- Nokia Asha Design Guide: http://developer.nokia.com/Resources/Library/Asha_UI/
- Porting Guide: http://developer.nokia.com/Resources/Library/Porting_to_Nokia_Asha/
- Documentation: http://developer.nokia.com/Develop/asha/java/resources/docs/
- Training Videos: http://developer.nokia.com/Develop/asha/learning.xhtml
- Code Examples: http://developer.nokia.com/Develop/asha/java/resources/code/
THANK YOU.
QUESTIONS?
For more information:
https://developer.nokia.com/Develop/asha/learning.xhtml

Weitere ähnliche Inhalte

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
 
Nokia Asha webinar: Add VoIP services to your Nokia Asha apps
Nokia Asha webinar: Add VoIP services to your Nokia Asha appsNokia Asha webinar: Add VoIP services to your Nokia Asha apps
Nokia Asha webinar: Add VoIP services to your Nokia Asha appsMicrosoft Mobile Developer
 
LUMIA APP LABS #18: INTRODUCING NOKIA IMAGING SDK 1.0
LUMIA APP LABS #18: INTRODUCING NOKIA IMAGING SDK 1.0LUMIA APP LABS #18: INTRODUCING NOKIA IMAGING SDK 1.0
LUMIA APP LABS #18: INTRODUCING NOKIA IMAGING SDK 1.0Microsoft Mobile Developer
 
Nokia Asha webinar: Developing location-based services for Nokia Asha phones ...
Nokia Asha webinar: Developing location-based services for Nokia Asha phones ...Nokia Asha webinar: Developing location-based services for Nokia Asha phones ...
Nokia Asha webinar: Developing location-based services for Nokia Asha phones ...Microsoft Mobile Developer
 
Sviluppare una live app notifiche, live tile, lock screen
Sviluppare una live app notifiche, live tile, lock screenSviluppare una live app notifiche, live tile, lock screen
Sviluppare una live app notifiche, live tile, lock screenMicrosoft Mobile Developer
 

Mehr von Microsoft Mobile Developer (20)

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
 
Intro to Nokia X software platform and tools
Intro to Nokia X software platform and toolsIntro to Nokia X software platform and tools
Intro to Nokia X software platform and tools
 
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
 
Nokia Asha webinar: Add VoIP services to your Nokia Asha apps
Nokia Asha webinar: Add VoIP services to your Nokia Asha appsNokia Asha webinar: Add VoIP services to your Nokia Asha apps
Nokia Asha webinar: Add VoIP services to your Nokia Asha apps
 
LUMIA APP LABS #18: INTRODUCING NOKIA IMAGING SDK 1.0
LUMIA APP LABS #18: INTRODUCING NOKIA IMAGING SDK 1.0LUMIA APP LABS #18: INTRODUCING NOKIA IMAGING SDK 1.0
LUMIA APP LABS #18: INTRODUCING NOKIA IMAGING SDK 1.0
 
Nokia Asha webinar: Developing location-based services for Nokia Asha phones ...
Nokia Asha webinar: Developing location-based services for Nokia Asha phones ...Nokia Asha webinar: Developing location-based services for Nokia Asha phones ...
Nokia Asha webinar: Developing location-based services for Nokia Asha phones ...
 
Sviluppare una live app notifiche, live tile, lock screen
Sviluppare una live app notifiche, live tile, lock screenSviluppare una live app notifiche, live tile, lock screen
Sviluppare una live app notifiche, live tile, lock screen
 

Kürzlich hochgeladen

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
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
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
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
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
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 
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
 
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
 
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
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
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
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
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
 

Kürzlich hochgeladen (20)

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
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
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
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
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
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 
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)
 
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
 
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.
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
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
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
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
 

Nokia Asha webinar: New API for social sharing in Nokia Asha SDK 1.1

  • 1. SOCIAL SHARING USING NOKIA ASHA SDK 1.1 (BETA) Pranav Gothadiya Product Owner Nokia Asha SDK pranav.gothadiya@nokia.com
  • 2. CONTENTS • • • • • • • Introduction to Social Sharing What is Share API? Using Share API Application development using Share API - Share contents from MIDlet - Share contents from other apps - Fastlane integration Oauth 2.0 Emoji Support Additional Information
  • 3. INTRODUCTION TO SOCIAL SHARING • • • • Sharing content with social media Built-in feature of Share API through content handler Oauth 2.0 based authentication support Use unicode base emoticons in content sharing
  • 4. WHAT IS SHARE API ? • • • • Its a convenient overlay to JSR-211 for simple social sharing of content Platform implements this social sharing support Content handled either by content type/content handler ID Application development: - Implementing source for sharing - Implementing destination for sharing
  • 5. APPLICATION SIDE IMPLEMENTATION Code snippet: String[] args = new String[]{"text=" + this.sharedText.getString()}; String mime = "text/plain"; Registry registry = Registry.getRegistry(this.getClass().getName()); Invocation invocation = new Invocation(null, mime, "com.nokia.share"); invocation.setAction("share"); invocation.setArgs(args); invocation.setResponseRequired(false); registry.invoke(invocation);
  • 6. SUPPORTED ARGUMENTS • url: url - The url to the file that is being shared (many supported) n This is used when the shared items are files String[] args = new String[]{“url=file:///Phone/_my_picture/img1.png"};
  • 7. SUPPORTED ARGUMENTS • url: url - • The url to the file that is being shared (many supported) n. This is used when the shared items are files text: text - Textual content that is being shared This is used when the shared items are texts String[] args = new String[]{"text=file:///Phone/_my_picture/img1.png"};
  • 8. SUPPORTED ARGUMENTS • url: url - • The url to the file that is being shared (many supported) n. This is used when the shared items are files text: text - Textual content that is being shared. This is used when the shared items are texts For Fastlane integration • id - A unique identifier of the share transaction. It can be stored for future reference. Used with “open-shared” action.
  • 9. SUPPORTED SHARE TYPES Following mime types can be registered: • • • • image/* or specific image types audio/* or specific audio types video/* or specific video types text/plain type “No limit on size or types by the Share API, but there might be limitations on the individual share destinations”
  • 10. SHARE CONTENTS FROM MIDLET • • • • • Generate arguments to pass content Specify mime type of the content Get content handler Registry Create invocation Invoke
  • 11. SHARE CONTENTS FROM OTHER APPLICATIONS • • • • • Make JAD entry for content handler Create ContentHandlerServer Get Invocation from content handler server Get the arguments (content) Use content to share
  • 12. CONTENT INVOCATION Content can be invoked from following native apps: • Sharing link and bookmark from Browser • Sharing files from: - Gallery - Music player - Video player - Camera • Sharing contacts and calendars
  • 13. FAST LANE INTEGRATION • • • Destination must register to action "open-shared“ Destination can deep link the user into the right view Fastlane item is added if the destination returns with Invocation.OK handler.finish(invocation, Invocation.OK); • Fastlane item is added if the destination returns Invocation.CANCELLED and quit contentHandlerServer.finish(invocation, Invocation.CANCELLED); • Share UI considers that sharing has ended, but does not create a Fastlane item because the sharing was not completed contentHandlerServer.finish(invocation, Invocation. INITIATED);
  • 14. OAUTH 2.0 SUPPORT • • • • • Allows to access server resources on behalf of the resource owner Secure open authorization protocol Authentication handled by Nokia browser Invocation happens through Content Handler Browser - Performs Oauth 2.0 based authentication - Get back the access token - MIDlet app to use that access token further
  • 15. OAUTH 2.0 IMPLEMENTATION 22 November 2013 / Slide no 15
  • 16. EMOJI SUPPORT • • • • • Japanese term which represents a picture It expresses an visual/idea in messaging Standard Unicode set: - Large number of emoji chars - Range: U+1F300 to 1F64F Surrogate pair: - Maps an emoji character to a pictograph - Nokia Asha Platform has built-in implementation Back to UTF16 char: - While reading the char from Java text component
  • 17. EMOJI SUPPORT - IMPLEMENTATION • Constants • Create surrogate par from Unicode character • Get Unicode character back from surrogate pair
  • 18. MORE INFORMATION Overview - http://developer.nokia.com/Develop/asha/java/start/ Downloads - http://developer.nokia.com/Develop/asha/java/tools.xhtml - http://projects.developer.nokia.com/LWUIT_for_Series_40 Guides - Nokia Asha Design Guide: http://developer.nokia.com/Resources/Library/Asha_UI/ - Porting Guide: http://developer.nokia.com/Resources/Library/Porting_to_Nokia_Asha/ - Documentation: http://developer.nokia.com/Develop/asha/java/resources/docs/ - Training Videos: http://developer.nokia.com/Develop/asha/learning.xhtml - Code Examples: http://developer.nokia.com/Develop/asha/java/resources/code/
  • 19. THANK YOU. QUESTIONS? For more information: https://developer.nokia.com/Develop/asha/learning.xhtml