Porting C code to Android
===

I am at the very start of a project where we are trying to write an application for an android smartphone that will call a shared library written in C.

It seems that the way to do this is to use the Android NDK to build the library in a binary format compatible with the smartphone hardware then use JNI to call the shared library from Java. Possibly using SWIG along the way to facilitate with the JNI wrapper functions.

But before I go down this route, am I missing any, potentially much simpler, approaches to getting a C app to run on a smartphone? What got me thinking that there may be other alternatives was the Canonical project looking to run ubuntu on a smartphone (http://www.ubuntu.com/devices/android) but it doesn't seem to be available yet.

Any lateral thoughts on this topic gratefully recevied