connecting to web services on android june 2 2010
DESCRIPTION
Open Source Bridge 2010 June 2, 2010 Portland OregonTRANSCRIPT
- 1. Connecting to Web Services on Android Sean Sullivan June 2, 2010
- 2. HTTP request HTTP response
- 3. HTTP XML JSON OAuth
- 4. + HTTP Option 1 java.net.URL java.net.HttpURLConnection Option 2 HttpClient 4.0 API
- 5. HttpClient 4.0 API org.apache.http.client.HttpClient org.apache.http.impl.client.DefaultHttpClient
- 6. 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
- 7. HttpClient 4.0 API org.apache.http.HttpResponse org.apache.http.StatusLine org.apache.http.HttpEntity org.apache.http.utils.EntityUtils
- 8. HttpClient programming HTTP response status code I/O exceptions timeouts gzip
- 9. HttpClient programming synchronous invocation public HttpResponse execute(HttpUriRequest request) asynchronous invocation public HttpResponse execute(HttpUriRequest request, ResponseHandler handler)
- 10. UI programming user clicks on button onClick listener Dont block the UI thread! Tip: use java.lang.Runnable
- 11. Response formats XML JSON RSS, Atom other
- 12. JSON processing json.org package Google GSON library XStream + Jettison * json-lib * * does not work on Android 1.x
- 13. 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.x
- 14. RSS and Atom Rome library * Apache Abdera library * * does not work on Android 1.x
- 15. Client libraries code.google.com/p/jreeagle code.google.com/p/jpoco code.google.com/p/meetup-java-client
- 16. Client libraries code.google.com/p/gdata-java-client code.google.com/p/upcoming-java-client ickrj.sourceforge.net
- 17. Conclusion HttpClient API use XStream for XML processing use Google GSON for JSON processing OAuth has a learning curve
- 18. Thank you