Collects context data. Implementations must never throw; if an internal error occurs, return an empty map instead.
FutureOr<Map<String, dynamic>> getData();