GSoC Android front-end

Michael Zangl michael at
Fri Mar 23 17:50:50 EDT 2012

Libpurple currently has only been compiled for android (pidroid) and
testet with the null protocol. That means if you write C code for
android, you can use libpurple functions.

But there are lots of things that need adaption, for example: 
      * Function calls from Java (GUI) need to be send and converted to
        c function calls, probably in an other thread, because UI Thread
        only has limited stack. 
      * The event system should be implemented in Java, for better
        control of which thread does what and synchronisation. 
      * All objects need to be wrapped inside java objects. 
      * Object deletion often happens by libpurple, so such cases need
        to be caught and the corresponding java objects marked for
        deletion (=> dereference them)
      * SSL is shipped with android, but only has java interface. 
      * I don't know about normal network connections, it might be that
        android's permission policy is in the way and everything needs
        to be sent through java. 
      * Calling java callbacks from c code => implementing all the ui
        ops to send callbacks along to java. 
      * And by the way, a GUI needs to be written and adapters for
        account list, buddy list, ... to android data structures.

It is a task that needs a lot of little changes, so you should mainly
focus on getting the basic protocols and stuff working, and synchronize
all access properly.

Am Donnerstag, den 22.03.2012, 17:55 +0100 schrieb Alexis: 
> I know what is a cross-compiler for, but never used it. According to
> ideas page, libpurple was already ported to Android. I dont't know if
> is this one ( or another
> one, because is not specified.

More information about the Devel mailing list