مصرف زیاد رم هنگام لود کردن Bitmap
سلام دوستان من یک سری عکس دارم که در sdcard قرار دارن حالا میخوام اون ها رو با Bitmap فراخوانی بکنم ولی اجرای این Bitmap حدود 2 ثانیه طول میکشه و رم زیادی رو اشغال میکنه در ضمن عکس هایی هم که لود میکنه حجمشون حدود 1.2 مگابایت است لطفا راهنمایی بکنید که چیکارش بکنم این کدش هست :
final File[] files = new File[] {
new File(Environment.getExternalStorageDirectory(), "/folder/1.png"),
new File(Environment.getExternalStorageDirectory(), "/folder/2.png"),
new File(Environment.getExternalStorageDirectory(), "/folder/3.png"),
new File(Environment.getExternalStorageDirectory(), "/folder/4.png"),
new File(Environment.getExternalStorageDirectory(), "/folder/5.png"),
new File(Environment.getExternalStorageDirectory(), "/folder/6.png")
};
---------------------------------------------------------------------
Bitmap b = BitmapFactory.decodeFile(files[position].getPath());
1: باید برای عکس ها ThumbNail درست کنید و نباید عکس کیفیت بالا رو در همه جا استفاده کنید.
2: عکس ها باید دونه دونه Load بشن، مثلا استفاده از ViewPager , ListView و ... پیشنهاد میشه.
3: در استفاده از بیت مپ (طبق تجربه من) حجم عکس مهم نیست بلگه اندازه عکس هست که مشکل بوجود میاره. شما یک عکس 100 کیلوبایتی با ابعاد بزرگ هم داشته باشی روی نوت 3 رم کم میاری!
از راهنمایی هاتون ممنونم
من همون طور که گفتید عکس ها رو دونه دونه لود میکنم
امکان کاهش اندازه رو هم ندارم
عکس ها رو هم میخوام والپیپر بکنم ولی موقع تنظیم والپیپر 2-5 ثانیه گوشی قفل میکنه!!
راه دیگه ای نیست؟
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .