The frontend wouldn't just have to be written in Java, it could be HTML5/JavaScript using something like PhoneGap as a bridge (hypothetically) so that it could be used in Cydia as well as Android, but similar design principals would apply  (Having a JavaScript wrapper to libpurple could be pretty cool though, for writing plugins in javascript... maybe a different project idea though)<br>

<br><div class="gmail_quote">On 24 March 2012 10:50, Michael Zangl <span dir="ltr"><<a href="mailto:michael@fam-zangl.de" target="_blank">michael@fam-zangl.de</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Libpurple currently has only been compiled for android (pidroid) and<br>
testet with the null protocol. That means if you write C code for<br>
android, you can use libpurple functions.<br>
<br>
But there are lots of things that need adaption, for example:<br>
      * Function calls from Java (GUI) need to be send and converted to<br>
        c function calls, probably in an other thread, because UI Thread<br>
        only has limited stack.<br>
      * The event system should be implemented in Java, for better<br>
        control of which thread does what and synchronisation.<br>
      * All objects need to be wrapped inside java objects.<br>
      * Object deletion often happens by libpurple, so such cases need<br>
        to be caught and the corresponding java objects marked for<br>
        deletion (=> dereference them)<br>
      * SSL is shipped with android, but only has java interface.<br>
      * I don't know about normal network connections, it might be that<br>
        android's permission policy is in the way and everything needs<br>
        to be sent through java.<br>
      * Calling java callbacks from c code => implementing all the ui<br>
        ops to send callbacks along to java.<br>
      * And by the way, a GUI needs to be written and adapters for<br>
        account list, buddy list, ... to android data structures.<br>
<br>
It is a task that needs a lot of little changes, so you should mainly<br>
focus on getting the basic protocols and stuff working, and synchronize<br>
all access properly.<br>
<br>
Am Donnerstag, den 22.03.2012, 17:55 +0100 schrieb Alexis:<br>
<div>> I know what is a cross-compiler for, but never used it. According to<br>
> ideas page, libpurple was already ported to Android. I dont't know if<br>
> is this one (<a href="http://csclub.uwaterloo.ca/~dtbartle/pidroid/" target="_blank">http://csclub.uwaterloo.ca/~​dtbartle/pidroid/</a>) or another<br>
> one, because is not specified.<br>
<br>
<br>
</div><div><div>______________________________​_________________<br>
Devel mailing list<br>
<a href="mailto:Devel@pidgin.im" target="_blank">Devel@pidgin.im</a><br>
<a href="http://pidgin.im/cgi-bin/mailman/listinfo/devel" target="_blank">http://pidgin.im/cgi-bin/​mailman/listinfo/devel</a><br>
</div></div></blockquote></div><br>