registerIfNeeded method
Register device with backend if not already registered
Implementation
Future<void> registerIfNeeded() async {
if (!_isRegistered) {
_logger.warning('Device callbacks not registered');
return;
}
try {
final lib = PlatformLoader.loadCommons();
final registerFn = lib.lookupFunction<
Int32 Function(Int32, Pointer<Utf8>),
int Function(
int, Pointer<Utf8>)>('rac_device_manager_register_if_needed');
final envValue = _environmentToInt(_environment);
final buildTokenPtr = nullptr; // Build token not used in Flutter
final result = registerFn(envValue, buildTokenPtr.cast<Utf8>());
if (result != RacResultCode.success) {
_logger.debug('Device registration returned: $result');
}
} catch (e) {
_logger.debug('rac_device_manager_register_if_needed not available: $e');
}
}