Jump to content

augmenter la mémoire allouée à application


vet

Recommended Posts

Bonjours après maintes recherches je viens m'adresser à vous. icon_redface.gif

J'essaie d'afficher des images prises par l'appareil photo et de les afficher dans l'application. Quand je prends des images basse résolution (disons 100kB de taille), je n'ai pas de problèmes à les passer en bitmap pour l'affichage, par contre dès que je les prends en haute résolution(1.5MB), l'application plante avec l'exception Error java.lang.OutOfMemoryError. ça arrive soit sur mes smartphones(Samsung Galaxy SII,Samsung Galaxy SIII) soit sur toutes les tablettes.

Pour l'instant j'ai résolu en baissant manuellement la qualité et la taille des photos mais, vue l'évolution des appareils photo avec toujours plus de résolution, ce problème risque de se présenter de plus en plus souvent.

Y a-t-il pas une solution permanente pour augmenter la mémoire allouée à mon Application par Android sans devoir intervenir manuellement sur l'appareil et dans le code?

Les images sont stockées sous format Bitmap

//creation de l'image
Uri domuri1

ContentValues cv = new ContentValues();
cv.remove("101");
domuri1 = getContentResolver().insert(Media.EXTERNAL_CONTENT_URI, cv);
File domthumb1 = new File(domuri1.toString(), fileName1);

//mise en place de la séléction de l'image
Intent intent = new Intent("android.media.action.IMAGE_CAPTURE");
intent.putExtra(MediaStore.EXTRA_OUTPUT, domuri1);
startActivityForResult(intent, 100);

//enregistrement des images
ContentResolver cr = getContentResolver();
bitmap1 = MediaStore.Images.Media.getBitmap(cr, domuri1 );
imageView.setImageBitmap(bitmap1);
Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...