SlideShare une entreprise Scribd logo
1  sur  13
Easy Web Service on Android
with Nano
-by William
http://bulldog2011.github.com/
Problem Domain
 There is a gap between Android device and
traditional SOAP/XML based web service
SOAP/XML
Web Service
Nano to Fill the Gap
 Nano is a light client-side web service framework
tailored for Android platform.
 Feature Highlight:
 Support WSDL driven development, auto-generate strongly
typed proxy from WSDL.
 Support SOAP 1.1/1.2 and XML based Web service.
 Automatic XML to Java binding, performance comparable
to Android native XML parser.
 Verified with industrial grade Web Services like Amazon
and eBay Web Services.
 Asynchronous service invocation, flexible HTTP/SOAP
header, timeout, encoding setting, logging, etc.
 Can be used as a standalone XML and JSON binding
framework.
The Big Picture
Code Generation from WSDL
Automatic XML<>Object Binding
WSDL Driven Dev Flow on Android
1. Generate Android Java proxy from WSDL,
2. Create new Android project, add Nano
runtime and generated proxy into the project,
3. Implement application logic and UI, call
proxy to invoke web service as needed.
Simple Service Invocation Paradigm
 Invoke service with:
1. Request object
2. Callback object with success, failure and SOAP fault handling
logic
A Service Call Sample
Demo 1 – BarCode
Demo 2 – Amazon Book Finder
Amazon Product Advertising
API used:
1. itemSearch for book
search
2. cartCreate to add
chosen book into
shopping cart
Demo 3 – eBay Demo App
eBay Finding API used:
1. findItemsByKeywords
for item search
eBay Shopping API used:
1. getSingleItem for item
details
eBay Trading API used:
1. addToWatchList for
adding item to watch list
Source, Samples and Tutorials
For Android:
https://github.com/bulldog2011/nano
Similar framework for iOS:
https://github.com/bulldog2011/pico

Contenu connexe

Tendances

RESTful Apps With MongoDB
RESTful Apps With MongoDBRESTful Apps With MongoDB
RESTful Apps With MongoDB
MongoDB
 

Tendances (20)

Technologies That Make LINE QR Code Login Possible
Technologies That Make LINE QR Code Login PossibleTechnologies That Make LINE QR Code Login Possible
Technologies That Make LINE QR Code Login Possible
 
Selenium basics
Selenium basicsSelenium basics
Selenium basics
 
REST API in Salesforce
REST API in SalesforceREST API in Salesforce
REST API in Salesforce
 
“Web Services with Mobile Phones” por João Duro
“Web Services with Mobile Phones” por João Duro“Web Services with Mobile Phones” por João Duro
“Web Services with Mobile Phones” por João Duro
 
SAML Protocol Overview
SAML Protocol OverviewSAML Protocol Overview
SAML Protocol Overview
 
WEBLOGIC ADMINISTRATION 11g NEW BATCH STARTS FROM 16 DEC
WEBLOGIC ADMINISTRATION 11g NEW BATCH STARTS FROM 16 DECWEBLOGIC ADMINISTRATION 11g NEW BATCH STARTS FROM 16 DEC
WEBLOGIC ADMINISTRATION 11g NEW BATCH STARTS FROM 16 DEC
 
Isomorphic apps
Isomorphic appsIsomorphic apps
Isomorphic apps
 
Brewing Beer with Windows Azure - NDC2013
Brewing Beer with Windows Azure - NDC2013Brewing Beer with Windows Azure - NDC2013
Brewing Beer with Windows Azure - NDC2013
 
Scalable chat bot services at line now
Scalable chat bot services at line nowScalable chat bot services at line now
Scalable chat bot services at line now
 
RESTful Apps With MongoDB
RESTful Apps With MongoDBRESTful Apps With MongoDB
RESTful Apps With MongoDB
 
Introduction to asp.net
Introduction to asp.netIntroduction to asp.net
Introduction to asp.net
 
SAML and Liferay
SAML and LiferaySAML and Liferay
SAML and Liferay
 
Microservices - not just with Java
Microservices - not just with JavaMicroservices - not just with Java
Microservices - not just with Java
 
Creating & consuming simple web service
Creating & consuming simple web serviceCreating & consuming simple web service
Creating & consuming simple web service
 
Single sign on using SAML
Single sign on using SAML Single sign on using SAML
Single sign on using SAML
 
Bot Framework with Xamarin Forms
Bot Framework with Xamarin FormsBot Framework with Xamarin Forms
Bot Framework with Xamarin Forms
 
Update of line live over the past year
Update of line live over the past yearUpdate of line live over the past year
Update of line live over the past year
 
How Small Can Java Microservices Be?
How Small Can Java Microservices Be?How Small Can Java Microservices Be?
How Small Can Java Microservices Be?
 
SAML Smackdown
SAML SmackdownSAML Smackdown
SAML Smackdown
 
Active Directory Single Sign-On with IBM
Active Directory Single Sign-On with IBMActive Directory Single Sign-On with IBM
Active Directory Single Sign-On with IBM
 

Similaire à Nano

Deview 2013 mobile browser internals and trends_20131022
Deview 2013 mobile browser internals and trends_20131022Deview 2013 mobile browser internals and trends_20131022
Deview 2013 mobile browser internals and trends_20131022
NAVER D2
 
Codestrong 2012 breakout session building your own custom cloud services
Codestrong 2012 breakout session   building your own custom cloud servicesCodestrong 2012 breakout session   building your own custom cloud services
Codestrong 2012 breakout session building your own custom cloud services
Axway Appcelerator
 

Similaire à Nano (20)

Web services Concepts
Web services ConceptsWeb services Concepts
Web services Concepts
 
SOAP Service in Mule Esb
SOAP Service in Mule EsbSOAP Service in Mule Esb
SOAP Service in Mule Esb
 
SOAP--Simple Object Access Protocol
SOAP--Simple Object Access ProtocolSOAP--Simple Object Access Protocol
SOAP--Simple Object Access Protocol
 
soap toolkit
soap toolkitsoap toolkit
soap toolkit
 
Web Development Presentation
Web Development PresentationWeb Development Presentation
Web Development Presentation
 
Deview 2013 mobile browser internals and trends_20131022
Deview 2013 mobile browser internals and trends_20131022Deview 2013 mobile browser internals and trends_20131022
Deview 2013 mobile browser internals and trends_20131022
 
OWIN (Open Web Interface for .NET)
OWIN (Open Web Interface for .NET)OWIN (Open Web Interface for .NET)
OWIN (Open Web Interface for .NET)
 
Web API or WCF - An Architectural Comparison
Web API or WCF - An Architectural ComparisonWeb API or WCF - An Architectural Comparison
Web API or WCF - An Architectural Comparison
 
Web Center Services and Framework
Web Center Services and  FrameworkWeb Center Services and  Framework
Web Center Services and Framework
 
SAX - Android Development
SAX - Android DevelopmentSAX - Android Development
SAX - Android Development
 
Web Services
Web ServicesWeb Services
Web Services
 
58615764 net-and-j2 ee-web-services
58615764 net-and-j2 ee-web-services58615764 net-and-j2 ee-web-services
58615764 net-and-j2 ee-web-services
 
Windows Server 2008 R2 Dev Session 03
Windows Server 2008 R2 Dev Session 03Windows Server 2008 R2 Dev Session 03
Windows Server 2008 R2 Dev Session 03
 
Android complete basic Guide
Android complete basic GuideAndroid complete basic Guide
Android complete basic Guide
 
Java API for XML Web Services (JAX-WS)
Java API for XML Web Services (JAX-WS)Java API for XML Web Services (JAX-WS)
Java API for XML Web Services (JAX-WS)
 
Soa With Ruby
Soa With RubySoa With Ruby
Soa With Ruby
 
Windows communication foundation (part1) jaliya udagedara
Windows communication foundation (part1)    jaliya udagedaraWindows communication foundation (part1)    jaliya udagedara
Windows communication foundation (part1) jaliya udagedara
 
Proposal
ProposalProposal
Proposal
 
IoT-javascript-2019-fosdem
IoT-javascript-2019-fosdemIoT-javascript-2019-fosdem
IoT-javascript-2019-fosdem
 
Codestrong 2012 breakout session building your own custom cloud services
Codestrong 2012 breakout session   building your own custom cloud servicesCodestrong 2012 breakout session   building your own custom cloud services
Codestrong 2012 breakout session building your own custom cloud services
 

Dernier

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Dernier (20)

Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 

Nano

  • 1. Easy Web Service on Android with Nano -by William http://bulldog2011.github.com/
  • 2. Problem Domain  There is a gap between Android device and traditional SOAP/XML based web service SOAP/XML Web Service
  • 3. Nano to Fill the Gap  Nano is a light client-side web service framework tailored for Android platform.  Feature Highlight:  Support WSDL driven development, auto-generate strongly typed proxy from WSDL.  Support SOAP 1.1/1.2 and XML based Web service.  Automatic XML to Java binding, performance comparable to Android native XML parser.  Verified with industrial grade Web Services like Amazon and eBay Web Services.  Asynchronous service invocation, flexible HTTP/SOAP header, timeout, encoding setting, logging, etc.  Can be used as a standalone XML and JSON binding framework.
  • 7. WSDL Driven Dev Flow on Android 1. Generate Android Java proxy from WSDL, 2. Create new Android project, add Nano runtime and generated proxy into the project, 3. Implement application logic and UI, call proxy to invoke web service as needed.
  • 8. Simple Service Invocation Paradigm  Invoke service with: 1. Request object 2. Callback object with success, failure and SOAP fault handling logic
  • 9. A Service Call Sample
  • 10. Demo 1 – BarCode
  • 11. Demo 2 – Amazon Book Finder Amazon Product Advertising API used: 1. itemSearch for book search 2. cartCreate to add chosen book into shopping cart
  • 12. Demo 3 – eBay Demo App eBay Finding API used: 1. findItemsByKeywords for item search eBay Shopping API used: 1. getSingleItem for item details eBay Trading API used: 1. addToWatchList for adding item to watch list
  • 13. Source, Samples and Tutorials For Android: https://github.com/bulldog2011/nano Similar framework for iOS: https://github.com/bulldog2011/pico