SharedStorageAccessManager Klasse

Definition

Ermöglicht es einer App, eine Datei für eine andere App freizugeben, indem ein Token über die URI-Aktivierung, app Service, REST-API usw. übergeben wird. Die Ziel-App löst das Token ein, um die Datei von der Quell-App freigegeben zu erhalten.

public ref class SharedStorageAccessManager abstract sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
class SharedStorageAccessManager final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
public static class SharedStorageAccessManager
Public Class SharedStorageAccessManager
Vererbung
Object Platform::Object IInspectable SharedStorageAccessManager
Attribute

Windows-Anforderungen

Gerätefamilie
Windows 10 (eingeführt in 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (eingeführt in v1.0)

Beispiele

Im folgenden Beispiel startet eine Quell-App eine Zuordnungs-App und stellt eine GPX-Datei bereit, die Wegbeschreibungen enthält, die von der Ziel-App angezeigt werden sollen.

Zunächst ruft die Quell-App ein Token für die GPX-Datei ab und verwendet die Protokollaktivierung, um die Ziel-App zu starten.

public async void ShareMostRecentDirections()
{
       // Get the most recently opened .gpx file
       // from the recently used file list.
       StorageItemMostRecentlyUsedList mostRecent = 
           StorageApplicationPermissions.MostRecentlyUsedList;

       String mruToken = mostRecent.Entries.FirstOrDefault().Token;
       StorageFile file = await mostRecent.GetFileAsync(mruToken);

       // Get the token to share access to the updated .gpx file.
       String sharingToken = SharedStorageAccessManager.AddFile(file);

       //Launch the driving application .
       Uri driveTo = new Uri("nokia-drive-to:?Gpxfile=" + sharingToken);
       var launch = await Launcher.LaunchURIAsync(driveTo);
}

Als Nächstes ruft die Ziel-App die GPX-Datei ab, indem sie das von der Quell-App empfangene Token bereitstellt.

protected override async void OnActivated(IActivatedEventArgs args)
{
    var protocolArgs = args as ProtocolActivatedEventArgs;

    // Get the token from the URI.
    var queryStrings = new WwwFormUrlDecoder(protocolArgs.Uri.Query);
    string gpxFileToken = queryStrings.GetFirstValueByName("GpxFile");

    // Get the .gpx file and call a custom method
    // to display driving directions.
    if (!string.IsNullOrEmpty(gpxFileToken))
    {
        PlotGpxFile(await
            SharedStorageAccessManager.RedeemTokenForFileAsync(gpxFileToken));
    }
}

Hinweise

Hier ist die Sequenz der Schritte, die es einer App ermöglichen, eine Datei für eine andere App freizugeben, indem ein Token beispielsweise im Rahmen einer URI-Aktivierung übergeben wird.

Die Verwendung der SharedStorageAccessManager-Klasse und von Freigabetoken unterliegt den folgenden Anforderungen und Einschränkungen.

  • Ein Freigabetoken kann nur einmal eingelöst werden. Danach ist das Token nicht mehr gültig.
  • Ein Freigabetoken läuft nach 14 Tagen ab und ist nicht mehr gültig.
  • Die Quell-App kann nicht mehr als 1000 Freigabetoken abrufen. Nachdem ein Token eingelöst, entfernt oder abläuft, zählt es nicht mehr auf das Kontingent der Quell-App.

Netzwerkdateien werden von dieser Klasse nicht unterstützt.

Methoden

AddFile(IStorageFile)

Ruft das Freigabetoken ab, mit dem eine App die angegebene Datei für eine andere App freigeben kann.

RedeemTokenForFileAsync(String)

Ruft eine Datei ab, die von einer anderen App freigegeben wird, indem das von der Quell-App empfangene Freigabetoken bereitgestellt wird.

RemoveFile(String)

Widerruft ein vorhandenes Freigabetoken.

Gilt für: