मैं अपने बिटमैप को कैश निर्देशिका में सहेजना चाहता हूं।मैं दूसरी बार अपने बिटमैप को सही तरीके से कैसे सहेज सकता हूं?
try {
File file_d = new File(dir+"screenshot.jpg");
@SuppressWarnings("unused")
boolean deleted = file_d.delete();
} catch (Exception e) {
// TODO: handle exception
}
imagePath = new File(dir+"screenshot.jpg");
FileOutputStream fos;
try {
fos = new FileOutputStream(imagePath);
bitmap.compress(CompressFormat.JPEG, 100, fos);
fos.flush();
fos.close();
} catch (FileNotFoundException e) {
Log.e("GREC", e.getMessage(), e);
} catch (IOException e) {
Log.e("GREC", e.getMessage(), e);
}
}
यह ठीक काम कर रहा है: मैं इस कोड का उपयोग करें। लेकिन अगर मैं एक ही रास्ते पर अलग आईएमजी को सहेजना चाहता हूं, तो कुछ गलत हो जाता है। मेरा मतलब है कि यह एक ही पथ में सहेजा गया है लेकिन मुझे पुरानी छवि दिखाई देती है, लेकिन जब मैं छवि पर क्लिक करता हूं तो मैं सही छवि देख सकता हूं जिसे मैंने दूसरी बार सहेजा था।
शायद यह कैश से आता है लेकिन मैं पुरानी छवि नहीं देखना चाहता क्योंकि जब मैं उस छवि को व्हाट्सएप पुरानी छवि के साथ साझा करना चाहता हूं, तो अगर मैं छवि भेजता हूं तो यह सही लगता है।
मैं इस कोड की तरह whatsapp पर सहेजी गई छवि को साझा करना चाहते हैं:
Intent shareIntent = new Intent();
shareIntent.setAction(Intent.ACTION_SEND);
shareIntent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(imagePath));
shareIntent.setType("image/jpeg");
startActivityForResult(Intent.createChooser(shareIntent, getResources().getText(R.string.title_share)),whtsapp_result);
मैं इसे कैसे ठीक कर सकते हैं?
अग्रिम धन्यवाद।
बेस्ट अभ्यास है। –
मैं पिछली छवि को हटाता हूं जैसा कि आप मेरे कोड में देख सकते हैं, यह काम नहीं कर रहा है? –
'हटाए गए' मान की जांच करें। अगर छवि हटा दी गई है तो यह कभी वापस नहीं आएगी। –