A survey on context-aware systems
International Journal of Ad Hoc and Ubiquitous Computing
Context-aware application programming for mobile devices
Proceedings of the 2008 C3S2E conference
Context-Aware Middleware for Resource Management in the Wireless Internet
IEEE Transactions on Software Engineering
Dedicated Programming Support for Context-Aware Ubiquitous Applications
UBICOMM '08 Proceedings of the 2008 The Second International Conference on Mobile Ubiquitous Computing, Systems, Services and Technologies
Event-specific software composition in context-oriented programming
SC'10 Proceedings of the 9th international conference on Software composition
EventCJ: a context-oriented programming language with declarative event-based context transition
Proceedings of the tenth international conference on Aspect-oriented software development
Efficient layer activation for switching context-dependent behavior
JMLC'06 Proceedings of the 7th joint conference on Modular Programming Languages
Declarative layer composition in framework-based environments
Proceedings of the International Workshop on Context-Oriented Programming
Using document-oriented GUIs in dynamic software product lines
Proceedings of the 12th international conference on Generative programming: concepts & experiences
Hi-index | 0.00 |
The behavior of mobile applications is particularly affected by their execution context, such as location and state a the mobile device. Among other approaches, context-oriented programming can help to achieve context-dependent behavior without sacrificing modularity or adhering to a certain framework or library by enabling fine-grained adaptation of default behavior per control-flow. However, context information relevant for mobile applications is mostly defined by external events and sensor data rather than by code and control flow. To accommodate this, the JCop language provides a more declarative approach by pointcut-like adaptation rules. In this paper, we explain how we applied JCop to the development of Android applications for which we extended the language semantics for static contexts and modified the compiler. Additionally, we outline the successful implementation of a simple, proof-of-concept mobile application using our approach and report on promising early evaluation results.