selectBestMatchingFile static method
选择最匹配的文件
Implementation
static String? selectBestMatchingFile(
String resId,
List<String> files,
ResourceQualifiers qualifiers,
) {
if (files.isEmpty) return null;
final candidates = _generateCandidateQualifiers(qualifiers);
print(
'candidates: ${candidates.map((e) => '(${e.toString()})').join(' , ')}',
);
// 按优先级顺序查找匹配的文件
for (final candidate in candidates) {
final suffix = _qualifiersToFileSuffix(candidate);
print('checking suffix: $suffix');
for (final file in files) {
final fileNameWithoutExt = file.split('.').first;
final expectedFileName = '$resId$suffix';
if (fileNameWithoutExt == expectedFileName) {
print('matched file: $file');
return file;
}
}
}
return null;
}