选择具有特定文件扩展名的文件 xamarin.android

Pick file with specific file extension xamarin.android

@vividos @jfversluis

预期行为

我想打开具有特定文件扩展名过滤器的文件。

实际行为

假设我有一个名为 "abc.ext" 的文件,所以我想过滤所有具有该特定扩展名的文件,即 .ext.
目前我看到 android 只支持 MIME 类型 不支持扩展。是这样吗?
这不起作用。我正在使用 FilePicker-Plugin-for-Xamarin-and-Windows.

var fileTypes = new string[] { "ext/*" }; 
FileData fileData = await CrossFilePicker.Current.PickFile(fileTypes);

这是开发者所说的:

Unfortunately Android lets you only specify MIME types to filter the selectable files (the others are grayed out and unselectable). If you know the MIME type, that's good, but in other cases you should check the FileName property and its file extension if it's an acceptable one.

我希望过滤除 ".ext" 之外的其他文件。
那么对于 android accept only accept MIME type 的问题有什么解决方法吗?
或者任何其他方法?我的文件基本上是二进制和加密文件,所以它可能没有一个很好和唯一的 MIME 类型。
任何替代方法将不胜感激。

正如我所说,

string[] allowedTypes = { "application/pdf" };

FileData fileData = await CrossFilePicker.Current.PickFile(allowedTypes);

对我来说工作正常&正如你所说的一切都是灰色的,那是因为你的扩展文件不在你的设备文件夹中。

您可以参考上图,除了您在 allowedTypes 中提到的格式扩展名,即 pdf

之外,所有内容都会变灰

如果您需要更多帮助,可以询问。