The Behavio team is very happy to announce a major version update to Funf, our open source mobile sensing framework, accompanied by respective updates to Funf’s two user-facing components (Funf Journal and Funf In A Box).
In the time since our last major version update (Funf 0.3) last year, we’ve had a chance to see how the framework has been used by developers and end users. In addition, we compiled our own “to do” list of features that didn’t make it into the 0.3 release.
Our high level goals for Funf 0.4 were to increase reliability and performance, as well as minimize effort for the developer. This last part includes both developers who are using the standard Funf API and Android library to build apps, as well as developers working on their own probes and extending the Funf framework at the lower levels (a “probe” is the basic component type in Funf which is responsible for sensing or detecting some type of data, and reporting it to software clients who requested the information. Funf 0.4 comes with 38 built-in probes!)
Most of the changes in this release are under the hood. It is a major release, and as such it breaks some compatibility with Funf 0.3 based apps.
The following diagram illustrates the high-level structure of the updated Funf architecture:
- Funf now runs as a single service instead of a service per probe.
- Internal communication now implemented using internal function calls in the same JVM rather than inter-process communications.
- Probes: Probe data exchange re-architected to use a GSON/JSON implementation.
- Pipelines: Generalized pipeline interface.
- Configuration: Extensive redesign of the configuration process
- Time normalization improvements. In particular, added ability to set configuration values of less than 1 second.
- Added dependency to modified Gson 2.1 library (see downloads page)
- Bug fixes.
For additional details see the detailed 0.4 release overview.
If you’re a user of Funf Journal, Funf In A Box, or any other Funf-based app that has been upgraded to version 0.4, you’ll enjoy higher stability and reliability out of the box.
|Funf Journal: New version and updated look|
We’ve also refreshed the look of Funf Journal to match the Android style guide, and tested it with devices running up to Android 4.2 Jellybean.
For all components, please let us know if you find any issues with this release.
Finally, as Funf was also just accepted to Google's Summer of Code program, if you are a student and interested in spending the summer contributing to Funf (and being paid by Google), you should consider applying.
We hope you enjoy Funf and find it useful!