[guardian-dev] I2P Android client library (was Manage Orbot from external app: Tor admin?)

Hans-Christoph Steiner hans at guardianproject.info
Thu Aug 21 14:52:07 EDT 2014

str4d wrote:
> On 08/15/2014 01:43 AM, Hans-Christoph Steiner wrote:
>> Cedric Jeanneret wrote:
>>> Just for information: I've a similar request regarding i2p
>>> support in Tor, and there's currently a client library being
>>> developed. It should provide the same kind of stuff I'm asking
>>> from Orbot. That will make orwall a pretty nice app, supporting
>>> what I consider the two "main onion router systems" :).
>>> By the way: I'm not a power-android-dev, but if I can help, just
>>> let me know. I can learn and, who knows, have some ideas ;).
>>> Cheers,
>>> C.
>> It would be great to support as many tools like this as possible,
>> including of course i2p.
>> .hc
> This seems like an excellent time to announce that I have pushed the
> first release of the I2P Android client library to Maven Central
> (net.i2p.android:client:0.1). For now, it simply bundles our standard
> Java APIs along with some Android-specific code for talking to the I2P
> Android app over our standard client API (I2CP), and some AIDL
> interfaces for obtaining the status of the I2P Android router. This
> allows app devs to create I2P sockets using our streaming and datagram
> APIs, and have full control over their tunnels.
> For some applications (like orWall), simply having the ability to
> create tunnels in I2PTunnel (which provides some standard types, like
> a SOCKS client proxy) would be sufficient. So the next stage of
> development would be to create an Intent interface for I2PTunnel, like
> is being discussed for Orbot.
> Since this mailing list is full of people designing privacy-aware
> Android apps: what would you like to see in this client library? What
> use cases do you envisage? Should I separate the AIDL interface into a
> separate library, so you can query the router status without needing
> to have the entire client-side API (if you only wanted to use the
> Intents API)? Where should I put the pony?

Good to see more options being developed here :).  I think the key is to focus
on allowing apps to use I2P as transparently and automatically as possible.
So the user would just have to opt-in with a check box, then the rest happens
automatically.  That means things like starting I2P if it is not running, have
a default config that works with the user having to enter in any settings, etc.

This should also be as easy as possible for developers to incorporate in their
apps,and it should get along nicely with other tools like VPNs, Orbot,
psiphon, etc.


PGP fingerprint: 5E61 C878 0F86 295C E17D  8677 9F0F E587 374B BE81

More information about the Guardian-dev mailing list