I couldn't say for Android but I've been able to do it for iOS.
The thing you need to consider is that spatialite requires native GEOS and PROJ4 libraries to work properly (for spatial indexes), so those ones also need to be compiled.
The version of sqlite required by spatialite may also be different from the one that is distributed in the platform (this is the case in iOS : the sqlite version is too old to be used directly by spatialite), that's why the right way to do it is to get the "amalgation" version of spatialite (that also encapsulate sqlite) and compile from that.
There is a short notice on the spatialite site with some info about how to build spatialite:
For GEOS and PROJ4, you should be able to compile them from the scripts delivered with the project easily. However, on my side, even if the compilation went fine with the scripts, I had some side effects at runtime with double type (some were NaN), so I compiled them directly in XCode (the iOS dev env) and the runtime behavior was OK then.