Skip to content

HTTPS clone URL

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

README

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: libhelloworldservice.so (to /system/lib),
and helloworldservice, and helloworldclient to /data. 
(See deploy.sh, and buildit.sh)

adb shell
cd /data
./helloworldservice &
./helloworldclient

I hope that this code will help others from scratching their head a lot.

  https://review.source.android.com/12454
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:
    http://github.com/mcr/Android-HelloWorldService

Something went wrong with that request. Please try again.