共用方式為


StorageItemAccessList 類別

定義

代表從靜態 StorageApplicationPermissions.FutureAccessList 屬性取得 (應用程式的未來存取清單) 。 您的使用者會挑選檔案和資料夾,以授權您的 app 存取原本可能無法存取的項目。 如果您將這些項目新增到未來存取清單,則可以保留該權限,讓您的 app 稍後再次存取這些項目。 專案會以 StorageFileStorageFolder 物件的形式儲存在未來的存取清單中。

public ref class StorageItemAccessList sealed : IStorageItemAccessList
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
class StorageItemAccessList final : IStorageItemAccessList
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
public sealed class StorageItemAccessList : IStorageItemAccessList
Public NotInheritable Class StorageItemAccessList
Implements IStorageItemAccessList
繼承
Object Platform::Object IInspectable StorageItemAccessList
屬性
實作

Windows 需求

裝置系列
Windows 10 (已於 10.0.10240.0 引進)
API contract
Windows.Foundation.UniversalApiContract (已於 v1.0 引進)

範例

此範例示範如何將專案新增至應用程式的 FutureAccessListMostRecentlyUsedList

StorageFile file = await savePicker.PickSaveFileAsync();
if (file != null)
{
    // Add to MRU with metadata (For example, a string that represents the date)
    string mruToken = Windows.Storage.AccessCache.StorageApplicationPermissions.MostRecentlyUsedList.Add(file, "20120716");

    // Add to FA without metadata
    string faToken = Windows.Storage.AccessCache.StorageApplicationPermissions.FutureAccessList.Add(file);  
}
else
{
    // The file picker was dismissed with no file selected to save
}
#include <sstream>
#include <winrt/Windows.Storage.h>
#include <winrt/Windows.Storage.AccessCache.h>
#include <winrt/Windows.Storage.Pickers.h>
using namespace winrt;
using namespace Windows::Storage::Pickers;
using namespace Windows::Storage;
...
winrt::fire_and_forget AddToLists()
{
    FileSavePicker savePicker;
    auto plainTextExtensions{ winrt::single_threaded_vector<winrt::hstring>() };
    plainTextExtensions.Append(L".txt");
    savePicker.FileTypeChoices().Insert(L"Plain Text", plainTextExtensions);
    savePicker.SuggestedFileName(L"New Document");

    StorageFile file{ co_await savePicker.PickSaveFileAsync() };
    if (file)
    {
        // Add to MRU with metadata (For example, a string that represents the date)
        winrt::hstring mruToken { Windows::Storage::AccessCache::StorageApplicationPermissions::MostRecentlyUsedList().Add(file, L"20120716") };

        // Add to FA without metadata
        winrt::hstring faToken { Windows::Storage::AccessCache::StorageApplicationPermissions::FutureAccessList().Add(file) };
    }
    else
    {
        // The file picker was dismissed with no file selected to save
    }
}

建議您儲存 StorageApplicationPermissions.MostRecentlyUsedList.AddStorageApplicationPermissions.FutureAccessList.Add 所傳回的權杖,以便使用這些權杖來擷取您所新增專案的個別清單專案。 在此範例中,我們會分別將權杖儲存在 和 faTokenmruToken ,但不會對其執行任何其他動作。

此外, savePicker 此範例中的 變數包含範例所建立的 FileSavePicker 物件。 若要深入瞭解如何使用檔案選擇器,請參閱使用 選擇器開啟檔案和資料夾 ,以及 使用選擇器儲存檔案

備註

使用此未來存取清單來保留可能未包含在應用程式資訊清單中功能所指定之可存取位置的檔案和位置的存取權。 例如,如果您的應用程式使用檔案選擇器來存取檔案 (或位置) ,建議您在此未來存取清單中儲存從檔案選擇器傳回的 StorageFile

此清單最多可儲存 1000 個專案,而且必須由應用程式維護。

若要查看更多程式碼範例,請參閱 檔案選擇器範例檔案存取範例

若要瞭解如何使用 FutureAccessListMostRecentlyUsedList,請參閱 追蹤最近使用的檔案和資料夾

若要深入瞭解您的應用程式有權存取的檔案和位置,請參閱 檔案存取權限

屬性

Entries

取得物件,用於從存取清單擷取儲存體專案。

MaximumItemsAllowed

取得存取清單可以包含的最大儲存體專案數目。

方法

Add(IStorageItem)

將新的儲存體專案加入至存取清單。

Add(IStorageItem, String)

將新的儲存體專案和隨附的中繼資料新增至存取清單。

AddOrReplace(String, IStorageItem)

將新的儲存專案新增至存取清單,或取代清單中已存在的指定專案。

AddOrReplace(String, IStorageItem, String)

將新的儲存體專案和隨附的中繼資料新增至存取清單,或如果指定的專案已存在於清單中,則會取代指定的專案。

CheckAccess(IStorageItem)

判斷應用程式是否可以存取存取清單中的指定儲存體專案。

Clear()

從存取清單中移除所有儲存體專案。

ContainsItem(String)

判斷存取清單是否包含指定的儲存體專案。

GetFileAsync(String)

從清單中擷取指定的 StorageFile

GetFileAsync(String, AccessCacheOptions)

使用指定的選項,從清單中擷取 StorageFile

GetFolderAsync(String)

從清單中擷取指定的 StorageFolder

GetFolderAsync(String, AccessCacheOptions)

使用指定的選項,從清單中擷取指定的 StorageFolder

GetItemAsync(String)

從最近使用的 (MRU) 清單中擷取指定的專案 (,例如檔案或資料夾) 。

GetItemAsync(String, AccessCacheOptions)

使用指定的選項,從清單中擷取指定的專案 (,例如檔案或資料夾) 。

Remove(String)

從存取清單中移除指定的儲存專案。

適用於

另請參閱