After some more research I have found the following;
SWIG works with Android NDK except there may have to be some twiddling with directors.
However, if my library is in the native language, i.e. Java, then I have a problem as then I need to call from Ruby (Rhomobile) to Java and that SWIG doesn't do! I really do not want to write a Ruby to Java wrapper to do this!
For Objective-C it seems that a student may have started on a obj-C wrapper over C++ but this doesn't help me as my library will be in the native language, i.e. Obj-C. SWIG does not support Ruby to Obj-C.