我想将文件下载到Downloads
文件夹并阅读。它是一个根文件夹,如照片和视频。
但Windows.Storage.DownloadsFolder
不适用于电话,我不KnownFolders
喜欢它Windows.Storage.KnownFolders.PicturesLibrary;
我也试过C:\Data\Users\Public\Downloads\
它给出了未经授权的结果。
我看到一些应用程序可以访问它,但是如何?
我想将文件下载到Downloads
文件夹并阅读。它是一个根文件夹,如照片和视频。
但Windows.Storage.DownloadsFolder
不适用于电话,我不KnownFolders
喜欢它Windows.Storage.KnownFolders.PicturesLibrary;
我也试过C:\Data\Users\Public\Downloads\
它给出了未经授权的结果。
我看到一些应用程序可以访问它,但是如何?
您可以使用文件或文件夹选择器。我不确定您是否希望用户选择一个文件,或者您是否想自己选择一个文件,但我认为实现这一目标的最佳方法是使用类似的东西:
FileOpenPicker openPicker = new FileOpenPicker();
openPicker.SuggestedStartLocation = PickerLocationId.Downloads;
StorageFile file = await openPicker.PickSingleFileAsync();
或者
FolderPicker folderPicker = new FolderPicker();
folderPicker.SuggestedStartLocation = PickerLocationId.Downloads;
folderPicker.PickFolderAndContinue();
要完成前面的答案,可以访问这样的文件夹,但只有在第一次通过 FolderPicker 访问它之后。
诀窍是使用 StorageApplicationPermissions.FutureAccessList。这是文件浏览器应用程序所做的。它将为您提供一个令牌,您可以将其保存在您的独立存储中,以便您以后可以直接访问下载文件夹,这要归功于该令牌。
有关 StorageApplicationPermissions.mostRecentlyUsedList 的演练,请参见那里:http: //msdn.microsoft.com/library/windows/apps/hh972603,但其原理与 FutureAccessList 完全相同。