Arrêtez d'enregistrer des photos à l'aide d'une caméra native Android
Je suis en utilisant native Android, appareil photo et enregistrez le fichier de mon dossier de données d'application (/mnt/sdcard/Android/data/com.de l'entreprise.app/files/Images/). Dans le même temps, une autre copie de la photo est enregistrée sur dossier DCIM.
C'est mon code:
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
String formattedImageName = getDateString() + ".jpg";
File image_file = new File(this.getExternalFilesDir(Environment.DIRECTORY_PICTURES), formattedImageName);
Uri imageUri = Uri.fromFile(image_file);
intent.putExtra(MediaStore.EXTRA_OUTPUT,imageUri);
startActivityForResult(intent, REQUEST_FROM_CAMERA);
Comment puis-je empêcher l'enregistrement copie supplémentaire de l'image de dossier DCIM?
Merci Beaucoup
source d'informationauteur Chinthaka
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser les éléments suivants :
Nous avons d'abord obtenir de la dernière image enregistrée par la vérification qui a été la dernière image modifiée. Ensuite, vérifiez si l'heure de dernière modification est dans les dernières secondes. Vous pouvez également vérifier l'emplacement exact de l'endroit où l'appareil photo stocke l'image.
Malheureusement, certains téléphones intelligents d'enregistrer les images dans un autre dossier comme dossier DCIM/100MEDIA. Ne peut donc pas se fier à ces solutions. Je préfère utiliser de cette façon:
J'ai essayé de savoir si une deuxième copie existe et supprimer la copie. J'ai utilisé le code ci-dessus pour trouver la dernière photo prise.
Avis: Ne pas utiliser
cursor.close();
après l'utilisation de managedQueryLaissez le curseur pour le système Android de gérer et de ne pas l'appeler. Vous pouvez voir managedQuery()Notice2: Le managedQuery méthode est obsolète et doit être évitée, à mettre en œuvre CursorLoaders à la place.
Une solution nice par la Route. Mais c'est bon pour les Samsungs que garder les images dans le dossier DCIM/Camera. Certains téléphones Sony Ericsson, Cth les conserver dans des dossiers comme DCIM/100MEDIA, DCIM/100ANDRO donc, j'ai légèrement modifié le code: