آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

حداکثر اندازه فایل برای ساختن bitmap ؟

Reza AF  12 سال پیش  12 سال پیش
+2 0

سلام

من وقتی میخام یک عکس رو از پوشه assets بصورت bitmap درستش کنم و داخل یک imageview نمایش بدم پیغام خطای زیر میاد :

01-23 18:28:21.578: E/AndroidRuntime(693): java.lang.OutOfMemoryError

وقتی از یه عکس کم حجمتر استفاده کردم مشکل رفع شد، میخاستم بدونم حجم عکس حداکثر چقدر باید باشه؟ عکس من کمتر از 150کیلوبات بود.

 برای این سوال 2 پاسخ وجود دارد.
پاسخ به سوال 
Mhaghshenas  12 سال پیش
0 0

0 0
نه، غلطه :) (12 سال پیش)
پاسخ به سوال 
uncocoder  12 سال پیش
+2 0

مهم نیست که عکس شما چند کیلو بایت هست، مهم هست که عکس شما چقدر Resolution داره. برای بارگزاری عکس:

1 بایت برای رنگ قرمز + 1 بایت برای رنگ سبز + 1 بایت برای رنگ آبی + 1 بایت برای آلفا که میشه جمعاً 4 بایت.

پس یک عکس 100x200 pixel برابر 100 * 200 * 4 بایت حافظه اشغال می کنه که میشه  80000B = 78KB

حالا مجموع عکس های بارگزاری شده نباید بیشتر از Heap Allocation Memory شما در گوشی ( یا Emulator ) باشه. توجه کنید که حجم منابع مثل گرافیک های اندروید، XML ها و چیزهایی مثل Array و متغیرها هم به این حجم در لحظه اجرا اضافه می شن.

حالا بگید:

  1. سایز عکس شما چقدر بوده؟
  2. چند تا عکس بوده؟
  3. حجم Heap Allocation Memory چقدر بوده؟

با ازای هر پیکسل بارگزاری میشه.

0 0
تقریبا 10 تا عکس، و خجم عکسها 100 تا 150 کیلوبایت هستن، یادمه شما توی پروژه ای که انجام دادین عکس چند مگاباتی تست کردین و راحت باز شد، اما برای من خطای حافظه میده. این Heap Allocation Memory رو هم نمیدونم چیه! (12 سال پیش)
0 0
شاید توی یک Loop برنامه شما گیر می کنه یا شاید جای دیگه مشکلی دارین و عکس ها هم باعث تسریع مشکل می شن. ( uncocoder در همین الان ) (12 سال پیش)

پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .