AirYarde can now track changes to signal strength actively or passively. In active mode AirYarde samples signal strength every x seconds. In passive mode AirYarde waits for Android to alert it to changes in signal strength. In active mode You choose the mode and (if you pick active mode) how often to sample the signal strength. To implement active scanning I created a new Android service and refactored the code a little bit in the original service.
To track how the application is being used I added the Google Analytics API to the code base. The API for Android helps developers know how the app is being used. In AirYarde the API records how many times each screen (Android activity) is viewed, how many times the services are started, and how many times the services are stopped manually.
No information from the Google Analytics API can be traced back to specific users and as always, none of your signal or GPS data leaves your phone.