2017-08-28 1 views
0

Ich versuche, ein Bild aus dem Ordner Kamera des Telefons (Hardware) über App (programmgesteuert) zu löschen. der Code I bin mit alsSo löschen Sie ein Bild aus Kamera Ordner

File file = new File(Environment.GetExternalStoragePublicDirectory(Environment.DirectoryDcim), "/Camera"); 

var images = file.ListFiles(); 

var file2 = new File(file.AbsolutePath, "/myImage.jpg"); 

bool deleted = file2.Delete(); 

Die AndroidManifest.xml folgt hat nur folgende Berechtigungen

<uses-sdk android:minSdkVersion="16" /> 
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> 

Der Weg file2 zeigt ist

"{/storage/emulated/0/DCIM/Camera/myImage.jpg}" 

noch ist es nicht das Bild zu löschen aus das Handy. Wenn der obige Code jedoch zum ersten Mal ausgeführt wird, zeigt es, dass das Bild gelöscht wurde, d. H. Die gelöschte Variable ist wahr, aber wenn ich myImage.jpg in meinem Handy überprüfe, ist es immer noch da.

In der nachfolgenden Ausführung des Codes, wird es nicht myImage.jpg in Bildern Variable aber Datei in der mobilen Kamera-Ordner vorhanden.

Es gibt bereits eine Antwort in java, aber ich benutze C# Xamarin.

+2

Mögliche Duplikate von [Wie lösche ich Dateien programmatisch auf Android?] (Https://stackoverflow.com/questions/24659704/how-do-i-delete-files-programmatica-on-android) – AndroidStorm

+0

Wie hast du Überprüfen Sie die Bilddatei auf Ihrem Gerät? –

+0

Durch den Ordner Kamera des Telefons gehen ... Ich habe das gleiche Bild mit dem gleichen Titel – Karan

Antwort

0

Es sieht so aus, als ob die Samsung Cloud-Dienste Ihre Daten automatisch sichern. Dann werden die gelöschten Bilder im Kameraordner des Telefons angezeigt, bis Sie das Bild nicht manuell vom Handy löschen.

Der folgende Code arbeitet

File file = new File(Environment.GetExternalStoragePublicDirectory(Environment.DirectoryDcim), "/Camera"); 

var images = file.ListFiles(); 

var file2 = new File(file.AbsolutePath, "/myImage.jpg"); 

bool deleted = file2.Delete(); 

nur sicherstellen, dass jede andere App, um Ihre Daten nicht sichern wird beim Löschen.

Verwandte Themen