Real-time Components

RTDroid's programming model consists of two major artifacts: 1) a real-time extension of Android manifest for expressing timing requirements, 2) a set of components for implementing application logic. The real-time manifest extension is discussed in a separate section. This section introduces the real-time components listed in two categories, respectively.

  • Real-time constructs:
    • Real-time services for executing background task
    • Real-time receivers for reacting to system-wide events
    • Periodic task for scheduling periodic logic with precise timing guarantee
  • Real-time communication channels:
    • Real-time message passing channel
    • Real-time broadcast channel
    • Bulk data transfer channel (zero-copy)
    • Cross-context channel

Real-Time Service

The real-time service (RealtimeService) is designed for implementing a background task that requires no user input. RealtimeService extends and preserves the lifecycle callback functions of Android's Service. Any developer who is familiar with Android's constructs should be able to quickly learn how to use RTDroid's real-time service.

Real-Time Receiver

The real-time receiver (RealtimeReceiver) is designed for reacting to system-wide events delivered via Intents. It is a subclass of Android’s broadcast receiver class. As Android's receiver, RTDroid's real-time receiver has an abstract function, named onReceive(), which defines logic to react to a system-wide event and is invoked when an Intent is received.