SlideShare a Scribd company logo
1 of 19
Download to read offline
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

More Related Content

More from 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
 

More from 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
 

Recently uploaded

Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
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
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
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
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
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
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
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
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
#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
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfngoud9212
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentationphoebematthew05
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsAndrey Dotsenko
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 

Recently uploaded (20)

Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
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...
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
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
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
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
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
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...
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
#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
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdf
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentation
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 

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