是否可以从Xamarin表单的本地文件夹加载图像?

时间:2020-04-07 20:45:00

标签: image xamarin.forms

您能否让我清楚如何从本地文件夹(我的意思是从D:驱动器而不是本地缓存文件夹)加载图像?

我尝试从D:驱动器引用图像,但未显示。

image.Source = ImageSource.FromFile("D:/ImageFilters/FilterUWP/Filter_UWP_SkiaSharp/Buldingimage.jpeg");

我可以知道它不起作用吗? 有什么办法从D:驱动器加载图像?

image.Source = ImageSource.FromFile("C:/Users/SanthiyaArulsamy/AppData/LocalState/image.jpg");

通过我的UWP应用工作。

请向我解释一下FromFile和本地文件夹的概念吗?

1 个答案:

答案 0 :(得分:1)

假设您仅将UWP定位为Uem,而不是iOS / Android(D:\在这种情况下没有意义),请阅读UWP应用的文档

通用Windows平台(UWP)应用程序默认可以访问某些文件系统位置。应用程序还可以通过文件选择器或声明功能来访问其他位置。 (source

根据this section,有一项功能broadFileSystemAccess,您可以在软件包XAML文件中声明

<Package ...
  xmlns:rescap="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities"
  IgnorableNamespaces="uap mp uap5 rescap">
  <Capabilities>
    <rescap:Capability Name="broadFileSystemAccess" />
  </Capabilities>
</Package>

如果用户已授予权限,则可以访问

用户有权访问的所有文件。例如:文档,图片,照片,下载,桌面,OneDrive等。

无论如何,文档中提到了两个警告

由于用户可以随时在“设置”中授予或拒绝该权限,因此您应确保您的应用对这些更改具有弹性。

如果您向商店提交了声明此功能的应用程序,则需要提供其他说明,说明您的应用程序需要此功能的原因以及打算如何使用它。