Condividi tramite


Guida introduttiva: Determinazione della disponibilità dei file di Microsoft OneDrive (HTML)

[ Questo articolo è rivolto agli sviluppatori per Windows 8.x e Windows Phone 8.x che realizzano app di Windows Runtime. Gli sviluppatori che usano Windows 10 possono vedere Documentazione aggiornata ]

Usa la proprietà StorageFile.isAvailable per determinare se un file di OneDrive è disponibile.

Prerequisiti

Molti metodi usati per interagire con cartelle e file sono asincroni. Per informazioni su come scrivere app asincrone, vedi Programmazione asincrona in JavaScript.

Uso della proprietà StorageFile.IsAvailable

In Windows 8.1 gli utenti possono indicare i file di OneDrive come disponibili offline (impostazione predefinita) o solo online. Gli utenti possono così spostare grandi file (come immagini e video) nell'area personale di OneDrive, contrassegnarli come solo online e risparmiare spazio su disco, dato che a livello locale viene salvato solo un file contenente metadati sul file remoto.

Una nuova proprietà, ovvero StorageFile.isAvailable viene usata per determinare se un file è attualmente disponibile. Nella tabella seguente è indicato il valore della proprietà StorageFile.isAvailable in diversi scenari.

Tipo di file Online Rete a consumo Offline
File locale True True True
File di OneDrive contrassegnato come disponibile offline True True True
File di OneDrive contrassegnato come solo online True Basato sull'impostazione utente False
File di rete True Basato sull'impostazione utente False

 

I passaggi seguenti indicano come stabilire se un file è attualmente disponibile.

  1. Definisci le funzionalità di accesso alla raccolta appropriate. In base alla raccolta che viene enumerata, dovrai definire la funzionalità per accedere a tale raccolta. Per altre informazioni su questo argomento e sulla definizione di altre funzionalità a livello di file per i progetti di Microsoft Visual Studio, vedi Accesso e autorizzazioni per i file nelle app di Windows Store.
  2. Acquisisci un oggetto StorageFolder che rappresenti la cartella i cui file verranno enumerati. A tale scopo, puoi fare riferimento a una delle proprietà statiche di Windows.Storage.KnownFolders, ad esempio Windows.Storage.KnownFolders.picturesLibrary.
  3. Chiama il metodo StorageFolder.getFilesAsync per recuperare tutti i file della cartella associata.
  4. Scorri la raccolta di file restituita facendo riferimento alla proprietà isAvailable per ogni oggetto StorageFile.

Il metodo seguente consente di enumerare la raccolta di immagini e visualizzare il nome, il nome del provider e la disponibilità per ogni file.

function OnDisplayAvailabilityClick(mouseEvent) {
    var output = document.getElementById("Output");

    var library = Windows.Storage.KnownFolders.picturesLibrary;
    var outString = "";
    library.getFilesAsync().then(function (files) {
        files.forEach(function (file) {
            outString += file.name + " (on " + file.provider.displayName + ") is " + (file.isAvailable ? "available" : "not available") + "\n";
        });
        output.innerText = outString;
    });
}

In questa guida rapida hai imparato a determinare a livello di programmazione se un file di OneDrive è disponibile.