2017-02-03 144 views
1

我對Android有一個有趣但棘手的問題。在我的Xamarin Forms項目中,我想創建一個文件夾,用於存儲從我的應用程序生成的所有文件,以便我可以通過FileManager輕鬆訪問它們。Xamarin Android:在PublicDirectory上爲我的應用創建文件夾

直到今天早上在Android中我用

Environmentstring path = Android.OS.Environment. 
         GetExternalStoragePublicDirectory(
          Android.OS.Environment.DirectoryDocuments).ToString(); 
Environmentpath += "/MyApp"; 
EnvironmentDirectory.CreateDirectory(path); 

我增加了一些新的部件,以我的解決方案,現在一切都被拒絕。

System.UnauthorizedAccessException:拒絕訪問「/ storage/emulated/0/Documents/MyApp」路徑。

那麼我改變AndroidManifest.xml中

<?xml version="1.0" encoding="utf-8"?> 
<manifest ...> 
    <uses-sdk android:minSdkVersion="15" android:targetSdkVersion="23" /> 
     <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> 
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> 
    <uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" /> 
    <uses-permission android:name="android.permission.ACCESS_MOCK_LOCATION" /> 
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> 
    <uses-permission android:name="android.permission.INTERNET" /> 
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> 
    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" /> 
    <uses-permission android:name="android.permission.VIBRATE" /> 
    <uses-permission android:name="android.permission.WRITE_GSERVICES" /> 
</manifest> 

但現在我無法創建該文件夾中的任何東西。只是舉例,我用在其他我的應用程序相同的代碼,結果是

FileManager example

有什麼建議?謝謝

+2

在哪個設備上測試?如果您在Android 6硬件上測試,請檢查應用程序管理器中的權限。有時write_external存儲被忽略,必須在應用程序管理器中設置。 – user1230268

+0

我的設備是Android 6的Cubot手機。我認爲'write_external'被忽略,但我不知道如何設置它。 – Enrico

+0

打開應用程序管理器並導航到您的應用程序。點擊它然後授予權限。現在在存儲上開了。跳躍,這有助於。在s7上有同樣的問題。 – user1230268

回答

0

由於user1230268聲明嘗試去您的應用程序管理器在您的設備上,並啓用權限。對我來說是

設置>設備>應用程序> YourAppName>權限>存儲

啓用它,你應該是好去。

相關問題