2013-07-12 22 views
5

Ho alcuni file pdf all'interno (i file di progetto) della mia app e volevo come aprire in Adobe Reader o nell'altro, ma non so come.Come aprire il file pdf in Windows Phone 8?

In iOS è più semplice e in Android so come, ma non so come in WP8.

Sono nuovo in Windows Phone 8:/

Grazie per tutto!

risposta

6

È necessario utilizzare il metodo LaunchFileAsync della classe Launcher. Esempio:

// Access the file. 
StorageFile pdfFile = await Windows.ApplicationModel.Package.Current.InstalledLocation.GetFileAsync("file.pdf"); 

// Launch the pdf file. 
Windows.System.Launcher.LaunchFileAsync(pdfFile); 

Troverete maggiori informazioni qui:

Auto-launching apps using file and URI associations for Windows Phone 8

+0

Con questo codice dell'app mostra questo errore: Il 0xf68 thread è terminato con il codice 259 (0x103). 'TaskHost.exe' (CLR C: \ windows \ system32 \ coreclr.dll: Argomenti Silverlight): caricato 'C: \ windows \ system32 \ System.Runtime.ni.dll'. Simboli di caricamento saltati Il modulo è ottimizzato e l'opzione debugger 'Just My Code' è abilitata. 'TaskHost.exe' (CLR C: \ windows \ system32 \ coreclr.dll: Silverlight AppDomain): caricato 'C: \ windows \ system32 \ en-US \ mscorlib.debug.resources.dll'. Il modulo è stato costruito senza simboli. Si è verificata una prima eccezione di tipo "System.IO.FileNotFoundException" in mscorlib.ni.dll –

+0

Il file.pdf si trova nello stesso livello di App.xml –

+0

ma, Qual è il percorso del mio file? –

0
async void launchPDF() 
{ 
string fileURL = @"Assets\file.pdf"; 
StorageFile pdfFile = await 
Windows.ApplicationModel.Package.Current.InstalledLocation.GetFileAsync(fileURL); 
if (pdfFile != null) 
{ 
    IAsyncOperation<bool> success = 
      Windows.System.Launcher.LaunchFileAsync(pdfFile); 

    if (await success) 
    { 
    // File launched 
    } 
    else 
    { 
    // File launch failed 
    } 
} 
else 
{ 

} 
} 

Assicurarsi azione file pdf build è contenuto

2

Salvare il file scaricato per l'archiviazione isolata ..

async void client_OpenReadCompleted(object sender, OpenReadCompletedEventArgs e) 
{ 
    byte[] buffer = new byte[e.Result.Length]; 
    await e.Result.ReadAsync(buffer, 0, buffer.Length); 

    using (IsolatedStorageFile storageFile = IsolatedStorageFile.GetUserStoreForApplication()) 
    { 
     using (IsolatedStorageFileStream stream = storageFile.OpenFile("your-file.pdf", FileMode.Create)) 
     { 
      await stream.WriteAsync(buffer, 0, buffer.Length); 
     } 
    } 
} 

Aprire e visualizzare il file pdf dal deposito isolato ..

// Access the file. 
StorageFolder local = Windows.Storage.ApplicationData.Current.LocalFolder; 
StorageFile pdffile = await local.GetFileAsync("your-file.pdf"); 

// Launch the pdf file. 
Windows.System.Launcher.LaunchFileAsync(pdffile);