Bonjour,

Voila j'ai un soucis : je tente d'enregistrer une image provenant de la preview de la camera, grace à la fonction callback onpreviewframe(). Mais j'ai une erreur :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
java.lang.UnsupportedOperationException: Unknown URI: content://media/external/images/media
Pourtant, j'ai recopié le code d'un bouquin concernant l'enregistrement d'une image. Le voici :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
camera.setPreviewCallback(new PreviewCallback() {
        public void onPreviewFrame(byte[] _data, Camera _camera) {
 
         if(nbImages == 15)
         {
          ContentValues values = new ContentValues();
          values.put(Media.TITLE, uuidUse + "_" + (++nbImages));
          values.put(Media.DESCRIPTION, "Image prise par le telephone");
          Uri uri = getContentResolver().insert(
                Images.Media.EXTERNAL_CONTENT_URI, values);
          OutputStream os;
          try {
           os = getContentResolver().openOutputStream(uri);
           os.write(_data);
           os.flush();
           os.close();
          } catch (FileNotFoundException e) {
           Log.e(getClass().getSimpleName(),
                 "Fichier non trouvé à l'ecriture de l'image", e);
          } catch (IOException e) {
           Log.e(getClass().getSimpleName(),
                 "Erreur E/S à l'enregistrement de l'image", e);
          }
         }
         else
         {
          ++nbImages;  
         }
        }
   });
Avec ceci, la preview se lance puis provoque une erreur qui ferme la preview lorsque nbimages = 15.

Je précise que j'ai bien rajouté la permission

Code : Sélectionner tout - Visualiser dans une fenêtre à part
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

Voila, si vous avez une idée je suis preneur

Merci.