Android
  Lightweight Web
Services with Monkey



 By:
       Eduardo Silva     edsiper@monkey-project.com
       Jonathan Gonzalez   zeus@monkey-project.com
< Goal >

   “Empower Android devices with an
    HTTP Service layer where applications
    and framework components can expose
    their own web services through a
    lightweight low level component.”
< Android Architecture >
Our proposal...
< Our proposal >

Add an HTTP
service layer
into the app
framework.
< Terms used >
●   Instance   = web server process

●   Requester = any SW component that request to
                own a service

●   Service    = Unique URI address used to identify
                 communication with a requesters :

                e.g: http://192.168.1.1/STATUS
< HTTP Service / Roles >

● Handle web server instances
● Register services for requesters

● Proxy web server communication
Communication Diagram
How ?
●   HTTP Service
     application written in Java compliant with
     Dalvik virtual machine, it exports
     com.android.http_service.*

●   Web Services Instance
     Monkey HTTP Daemon (web server)

●   How Instances and HTTP Service talk ?
    Through Monkey Duda interface
Why Monkey ?
…because
           Monkey Loves Android

Monkey Features
● web server designed for embedded devices (ARM)
● It's asynchronous, events oriented

● It has a flexible Plugin interface (API)

● It's binary size is only 55 KB

● It's very very fast
We expect to implement this
HTTP layer through GsoC 2012,
this is a really good improvement!

                  Monkey Team

Android & Monkey Web Services

  • 1.
    Android LightweightWeb Services with Monkey By: Eduardo Silva edsiper@monkey-project.com Jonathan Gonzalez zeus@monkey-project.com
  • 2.
    < Goal > “Empower Android devices with an HTTP Service layer where applications and framework components can expose their own web services through a lightweight low level component.”
  • 3.
  • 4.
  • 5.
    < Our proposal> Add an HTTP service layer into the app framework.
  • 6.
    < Terms used> ● Instance = web server process ● Requester = any SW component that request to own a service ● Service = Unique URI address used to identify communication with a requesters : e.g: http://192.168.1.1/STATUS
  • 7.
    < HTTP Service/ Roles > ● Handle web server instances ● Register services for requesters ● Proxy web server communication
  • 8.
  • 10.
  • 11.
    HTTP Service application written in Java compliant with Dalvik virtual machine, it exports com.android.http_service.* ● Web Services Instance Monkey HTTP Daemon (web server) ● How Instances and HTTP Service talk ? Through Monkey Duda interface
  • 12.
  • 13.
    …because Monkey Loves Android Monkey Features ● web server designed for embedded devices (ARM) ● It's asynchronous, events oriented ● It has a flexible Plugin interface (API) ● It's binary size is only 55 KB ● It's very very fast
  • 14.
    We expect toimplement this HTTP layer through GsoC 2012, this is a really good improvement! Monkey Team