Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Jira Legacy
serverSystem JIRA
serverIde71e36b8-1c31-3d38-9c43-0d513e8b44c9
keyFNSDKEXT-109

Jira Legacy
serverSystem JIRA
serverIde71e36b8-1c31-3d38-9c43-0d513e8b44c9
keyFNSDKEXT-96

Constraints

Performance

Calls to a VictoR device are time intensive I/O operations. The Communications Interface should not block and force the end-user to wait for those operations to complete. It should instead return the results asynchronously through callbacks.

...

The Android BLE Communications API will be composed primarily of two classes: VictorBleDevice and VictorBleDeviceManager. These classes are implementations of the abstract VictorDevice and VictorDeviceManager interfaces provided by the VictoR Core library. The VictorBleDevice class represents the connection interface to an individual VictoR device over a physical BLE radio. This class handles all interactions with that device over the BLE communications protocol, including connecting/disconnecting, reading/writing data, and subscribing/unsubscribing from events for that device like attribute (characteristic) changes and connection state changes. These interactions are implemented using the BLE API provided by the Android SDK. The details of the specific function calls required are outlined below in the Implementation section. The VictorBleDeviceManager manages all VictoR device connection interfaces through VictorBleDevice objects that it creates, maintains, and destroys as needed. This class acts as the primary interface for end-users to discover devices and manage connections to them. It also utilizes the Android SDK’s BLE API to accomplish this. In addition, the VictorBleDeviceManager provides a wrapper around the functions that the VictorBleDevice class offers, requiring only that the end-user provide the ID address for the specific device they are interested in interacting with, so that they don’t need to have any knowledge of the underlying organization of the devices within the manager. The class diagram in Figure 1 below illustrates the architecture of the Android BLE Communications API.

...

Device Manager

...