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 :
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 :
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
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
Voila, si vous avez une idée je suis preneur 
Merci.
Partager