Abstract
Smartphones are becoming an integral part of our life that provide various services to their users. Smartphones are typically equipped with a variety of sensors, making them ideal for context-aware computing. Most context-aware applications running on smartphones today implement their own logic for context-awareness and rely on offline learning to build static context models. However, with an increase in context-aware applications on smartphones, such a practice often leads to inefficient uses of system resources and ineffective handling of dynamic contexts. In fact, context-aware applications based on online machine learning have many common components. In this thesis, we show that it is possible to identify these common components to develop a unified service framework that supports various context-aware applications in a smartphone system. We will discuss how to implement such a general-purpose service framework in an Android system. Performance of the proposed framework is compared with that without using the framework.