[英]Configured SD card path in emulator is null - Windows Phone 8.1 (runtime)
[英]Access sd card on a UWP windows phone emulator by clicking a button in an app
我正在制作Windows Phone應用程序,我希望能夠在我的應用程序上添加一個按鈕,該按鈕使我能夠訪問模擬器上的虛擬SD卡並能夠選擇txt文件並在其中讀取該應用程序。 我對所有這些都還很陌生。
非常感謝
搶。
通過單擊應用程序中的按鈕在UWP Windows Phone模擬器上訪問SD卡
首先,通過配置仿真器“附加工具”的“ SD卡”選項卡,確保“插入SD卡”。 因此可以使用仿真器的SD卡文件夾。 有關如何配置的詳細信息,請參考本文檔的 SD卡部分。
其次,在您的應用可以存儲和訪問SD卡上的文件之前,在應用清單文件中指定removableStorage
功能。 通常,您還必須注冊以處理應用存儲和訪問的文件類型。例如,您需要訪問SD卡存儲中的txt
文件,請按以下方式配置應用清單:
<Applications>
...
<Extensions>
<uap:Extension Category="windows.fileTypeAssociation">
<uap:FileTypeAssociation Name="camera_assoication">
<uap:SupportedFileTypes>
<uap:FileType>.bmp</uap:FileType>
<uap:FileType>.txt</uap:FileType>
<uap:FileType>.gif</uap:FileType>
</uap:SupportedFileTypes>
</uap:FileTypeAssociation>
</uap:Extension>
</Extensions>
</Application>
</Applications>
<Capabilities>
<Capability Name="internetClient" />
<uap:Capability Name="removableStorage" />
</Capabilities>
有關功能的更多詳細信息,請參考App功能聲明 。
最后,現在您可以按照本文檔中的示例編寫邏輯。 例如,要讀取SD卡中的txt文件,可以使用如下代碼:
XAML
<TextBlock x:Name="txtreadresult"></TextBlock>
<Button x:Name="btnreadsd" Click="btnreadsd_Click" Content="read file from SD"></Button>
后面的代碼
private async void btnreadsd_Click(object sender, RoutedEventArgs e)
{
StorageFolder externalDevices = Windows.Storage.KnownFolders.RemovableDevices;
// Get the first child folder, which represents the SD card.
StorageFolder sdCard = (await externalDevices.GetFoldersAsync()).FirstOrDefault();
if (sdCard != null)
{
// An SD card is present and the sdCard variable now contains a reference to it.
StorageFile txtfile = await sdCard.GetFileAsync("text.txt");
string testtext = await FileIO.ReadTextAsync(txtfile);
txtreadresult.Text = testtext;
}
else
{
// No SD card is present.
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.