scanAirplayTxDevices function

Future<List<DiscoveredDevice>> scanAirplayTxDevices({
  1. dynamic onDeviceFound(
    1. DiscoveredDevice
    )?,
  2. Duration scanDuration = const Duration(seconds: 5),
})

Scan for AirPlay TX (發射端, 如 iPhone/iPad/Mac)

Implementation

Future<List<DiscoveredDevice>> scanAirplayTxDevices({
  Function(DiscoveredDevice)? onDeviceFound,
  Duration scanDuration = const Duration(seconds: 5), // 改名為 scanDuration
}) async {
  return scanMdnsDevices(
    serviceType: '_companion-link._tcp',
    mdnsType: '_companion-link._tcp',
    deviceFactory: ({
      required ip,
      required port,
      required String serviceName,
      required txtMap,
      List<String>? mdnsTypes,
    }) {
      return DiscoveredDevice.fromAirplay(
        ip: ip,
        port: port,
        serviceName: serviceName,
        txtMap: txtMap,
        mdnsTypes: mdnsTypes,
      );
    },
    onDeviceFound: onDeviceFound,
    logTag: 'mDNS',
    scanDuration: scanDuration, // 傳遞 scanDuration
  );
}