execute method

  1. @override
Future<({String? reason, double score})> execute()
override

Executes the method and returns a score between 0 and 100

Implementation

@override
Future<({double score, String? reason})> execute() async {
  final deviceInfo = await DeviceInfoPlugin().deviceInfo;

  if (deviceInfo is AndroidDeviceInfo) {
    // Check for LDPlayer-specific files first
    final ldPlayerFiles = await _getDetectedLDPlayerFiles();
    if (ldPlayerFiles.isNotEmpty) {
      return (score: score, reason: "$reason: ${ldPlayerFiles.join(', ')}");
    }

    // Check device info for LDPlayer indicators
    if (_isLDPlayer(deviceInfo)) {
      return (score: score, reason: reason);
    }
  }

  return (score: 0.0, reason: null);
}