I want to write an application that reads as many sensor vaulues (per time) as possible from different sensors (GPS, Acc, Gyro, Compass). So I have to investigate if there is an advantage in using NDK.
Here are my questions:
a) What is the bottleneck when reading sensor values from a sensor? Is it the senosr itself or Java? Can I increase the rate by using NDK? (I think for GPS the bottleneck is the sensor itself, but I've read that e.g. the Gyro-Sensor is quite fast) I found this thread and it seems the bottleneck is the sensor. Can someone confirm this?
b) Does polling instead of using EventListener increase the rate? What's the best way to read sensor values fast?
c) Has the use of NDK any influence on the power consumption of the application? I didn't find anything about this.
d) I'm new to Android. Is it much more afford to use NDK instead of normal Java? According to this sample-code it seems to be straightforward to interact with the sensors using an event-queue, but how much afford is it to compile the code and to use it from the application?
Thanks in advance.