Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
This is a skeleton application that creates an Android service in C++, accessing it via Java/Binder.
C++ Java
branch: master


I wrote a dummy "HelloWorld" service and client.
It uses Binder for IPC.  For some this is likely "duh", but it did take me
several days of puzzling to work things out.  I think some of the problem is
that there is some dead code in IMediaPlayerClient.cpp, which I was using as
my guide.   

I'm convinced that it should be possible to see the services from Java
Binder/ServiceManager code, and avoid a layer of JNI (and thus an NDK
invocation) between a Java application and a C++ service, but I didn't manage
that.  The bird droppings in the src/org/credil/...*.java are my attempts,
ignore them, or better yet, fix them. 

Push the three pieces generated: (to /system/lib),
and helloworldservice, and helloworldclient to /data. 
(See, and

adb shell
cd /data
./helloworldservice &

I hope that this code will help others from scratching their head a lot.
is one suggestion I have to make other writers of code like this easier.

Probably I'm posting to the wrong mailing list, sorry.  I can not keep up
with these mailing lists. 

My code is at:

Something went wrong with that request. Please try again.