Web Services and Android - OSSPAC 2009
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Web Services and Android - OSSPAC 2009

on

  • 8,233 views

Web Services and Android

Web Services and Android
OSSPAC
February 18 2009
Singapore

Statistics

Views

Total Views
8,233
Views on SlideShare
8,196
Embed Views
37

Actions

Likes
0
Downloads
295
Comments
0

2 Embeds 37

http://www.codeandroid.org 30
http://www.slideshare.net 7

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Web Services and Android - OSSPAC 2009 Presentation Transcript

  • 1. Web Services and Android Sean Sullivan OSSPAC 18 February 2009
  • 2. • HTTP • OAuth • XML • JSON
  • 3. +
  • 4. HTTP request XML response
  • 5. + http://code.google.com/p/jfireeagle
  • 6. jfireeagle project • HttpClient API • XStream • OAuth Java library
  • 7. “An open protocol to allow secure API authorization in a simple and standard method from desktop and web applications”
  • 8. • use OAuth to access protected data • your application needs to obtain an access token from the service provider • service provider will issue access token after the user grants permission
  • 9. + http://code.google.com/p/oauth
  • 10. + jfireeagle http://code.google.com/p/jfireeagle/wiki/Android jpoco http://code.google.com/p/jpoco/wiki/Android
  • 11. + HTTP Option 1 • java.net.URL • java.net.HttpURLConnection Option 2 • HttpClient 4.0 API
  • 12. HttpClient 4.0 API • org.apache.http.client.HttpClient • org.apache.http.impl.client.DefaultHttpClient
  • 13. HttpClient 4.0 API • org.apache.http.client.methods.HttpGet • org.apache.http.client.methods.HttpPost • org.apache.http.client.methods.HttpPut • org.apache.http.client.methods.HttpDelete
  • 14. HttpClient 4.0 API • org.apache.http.HttpResponse • org.apache.http.StatusLine • org.apache.http.HttpEntity • org.apache.http.utils.EntityUtils
  • 15. HttpClient programming • HTTP response status code • I/O exceptions • timeouts • gzip?
  • 16. HttpClient programming synchronous invocation public HttpResponse execute(HttpUriRequest request) asynchronous invocation public HttpResponse execute(HttpUriRequest request, ResponseHandler handler)
  • 17. UI programming • user clicks on button • onClick listener • Don’t block the UI thread! • Tip: use java.lang.Runnable
  • 18. Response formats • XML • JSON • RSS, Atom • other
  • 19. XML processing • org.w3c.dom package (DOM) • org.xml.sax package (SAX) • org.xmlpull package (XPP) • XStream • JDOM • Apache XmlBeans* * does not work on Android 1.0 or 1.1
  • 20. JSON processing • org.json package • Google GSON library * • XStream + Jettison * • json-lib * * does not work on Android 1.0 or 1.1
  • 21. RSS and Atom • Rome library * • Apache Abdera library * * does not work on Android 1.0 or 1.1
  • 22. Client libraries code.google.com/p/jfireeagle code.google.com/p/jpoco code.google.com/p/meetup-java-client
  • 23. Client libraries code.google.com/p/gdata-java-client code.google.com/p/upcoming-java-client flickrj.sourceforge.net
  • 24. Conclusion • HttpClient API • use XStream for XML processing • use org.json package for JSON processing • OAuth has a learning curve
  • 25. Thank you
  • 26. Resources • http://code.google.com/android/documentation.html • http://hc.apache.org/httpcomponents-client • http://code.google.com/p/oauth • http://xstream.codehaus.org