{"id":14449,"date":"2022-10-07T21:29:02","date_gmt":"2022-10-07T15:59:02","guid":{"rendered":"https:\/\/jassweb.com\/solved\/solved-memory-allocation-when-loading-a-really-large-image-on-android\/"},"modified":"2022-10-07T21:29:02","modified_gmt":"2022-10-07T15:59:02","slug":"solved-memory-allocation-when-loading-a-really-large-image-on-android","status":"publish","type":"post","link":"https:\/\/jassweb.com\/solved\/solved-memory-allocation-when-loading-a-really-large-image-on-android\/","title":{"rendered":"[Solved] Memory allocation when loading a really large image on Android"},"content":{"rendered":"<p> [ad_1]<br \/>\n<\/p>\n<div id=\"answer-43734674\" class=\"answer js-answer accepted-answer js-accepted-answer\" data-answerid=\"43734674\" data-parentid=\"43734564\" data-score=\"3\" data-position-on-page=\"1\" data-highest-scored=\"1\" data-question-has-accepted-highest-score=\"1\" itemprop=\"acceptedAnswer\" itemscope itemtype=\"https:\/\/schema.org\/Answer\">\n<div class=\"post-layout\">\n<div class=\"votecell post-layout--left\"><\/div>\n<div class=\"answercell post-layout--right\">\n<div class=\"s-prose js-post-body\" itemprop=\"text\">\n<p>First things first,<br \/>\n14.5 MB is the size of the <strong>JPEG<\/strong> but not the size of your actual image.<br \/>\nSimilarly, try to resave the image as png, you will see that size is increased by factors of 10, i.e. it might even reach 150 MB<\/p>\n<p>One thing that you must keep in mind is that these images are <strong>compressed<\/strong> into JPEG or PNG.<br \/>\nBut when these images are loaded into imageview or so, each <strong>Bit<\/strong> of the image is decompressed and occupies a memory in RAM.<\/p>\n<p>So the actual size of your image is basically its resolution multiplied by 4 (A-R-G-B)<\/p>\n<p><strong>EDIT &#8211; How to handle these images then?<\/strong><br \/>\nFirstly, use Glide (or Picasso) to load the images, instead of writing own AsyncTask for this.<\/p>\n<p><strong>In Glide there is a method called <code>override(int width, int height)<\/code> which will resize the image while downloading<\/strong>.<br \/>\nIdeally width and height should be the exact dimension of the ImageView (or any view), this will prevent the image from pixellating and also it will save the additional consumption of the memory. (you can always do minor calculations to retain image aspect ratio too)<\/p>\n<\/p><\/div>\n<div class=\"mt24\"><\/div>\n<\/div>\n<p>            <span class=\"d-none\" itemprop=\"commentCount\">1<\/span> <\/p><\/div>\n<\/div>\n<p>[ad_2]<\/p>\n<p>solved Memory allocation when loading a really large image on Android <\/p>\n","protected":false},"excerpt":{"rendered":"<p>[ad_1] First things first, 14.5 MB is the size of the JPEG but not the size of your actual image. Similarly, try to resave the image as png, you will see that size is increased by factors of 10, i.e. it might even reach 150 MB One thing that you must keep in mind is &#8230; <a title=\"[Solved] Memory allocation when loading a really large image on Android\" class=\"read-more\" href=\"https:\/\/jassweb.com\/solved\/solved-memory-allocation-when-loading-a-really-large-image-on-android\/\" aria-label=\"More on [Solved] Memory allocation when loading a really large image on Android\">Read more<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[320],"tags":[452,3414,3790],"class_list":["post-14449","post","type-post","status-publish","format-standard","hentry","category-solved","tag-android","tag-bitmap","tag-out-of-memory"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>[Solved] Memory allocation when loading a really large image on Android - JassWeb<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/jassweb.com\/solved\/solved-memory-allocation-when-loading-a-really-large-image-on-android\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"[Solved] Memory allocation when loading a really large image on Android - JassWeb\" \/>\n<meta property=\"og:description\" content=\"[ad_1] First things first, 14.5 MB is the size of the JPEG but not the size of your actual image. Similarly, try to resave the image as png, you will see that size is increased by factors of 10, i.e. it might even reach 150 MB One thing that you must keep in mind is ... Read more\" \/>\n<meta property=\"og:url\" content=\"https:\/\/jassweb.com\/solved\/solved-memory-allocation-when-loading-a-really-large-image-on-android\/\" \/>\n<meta property=\"og:site_name\" content=\"JassWeb\" \/>\n<meta property=\"article:published_time\" content=\"2022-10-07T15:59:02+00:00\" \/>\n<meta name=\"author\" content=\"Kirat\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Kirat\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/jassweb.com\/solved\/solved-memory-allocation-when-loading-a-really-large-image-on-android\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/jassweb.com\/solved\/solved-memory-allocation-when-loading-a-really-large-image-on-android\/\"},\"author\":{\"name\":\"Kirat\",\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/person\/65c9c7b7958150c0dc8371fa35dd7c31\"},\"headline\":\"[Solved] Memory allocation when loading a really large image on Android\",\"datePublished\":\"2022-10-07T15:59:02+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/jassweb.com\/solved\/solved-memory-allocation-when-loading-a-really-large-image-on-android\/\"},\"wordCount\":205,\"publisher\":{\"@id\":\"https:\/\/jassweb.com\/solved\/#organization\"},\"keywords\":[\"android\",\"bitmap\",\"out-of-memory\"],\"articleSection\":[\"Solved\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/jassweb.com\/solved\/solved-memory-allocation-when-loading-a-really-large-image-on-android\/\",\"url\":\"https:\/\/jassweb.com\/solved\/solved-memory-allocation-when-loading-a-really-large-image-on-android\/\",\"name\":\"[Solved] Memory allocation when loading a really large image on Android - JassWeb\",\"isPartOf\":{\"@id\":\"https:\/\/jassweb.com\/solved\/#website\"},\"datePublished\":\"2022-10-07T15:59:02+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/jassweb.com\/solved\/solved-memory-allocation-when-loading-a-really-large-image-on-android\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/jassweb.com\/solved\/solved-memory-allocation-when-loading-a-really-large-image-on-android\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/jassweb.com\/solved\/solved-memory-allocation-when-loading-a-really-large-image-on-android\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/jassweb.com\/solved\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"[Solved] Memory allocation when loading a really large image on Android\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/jassweb.com\/solved\/#website\",\"url\":\"https:\/\/jassweb.com\/solved\/\",\"name\":\"JassWeb\",\"description\":\"Build High-quality Websites\",\"publisher\":{\"@id\":\"https:\/\/jassweb.com\/solved\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/jassweb.com\/solved\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/jassweb.com\/solved\/#organization\",\"name\":\"Jass Web\",\"url\":\"https:\/\/jassweb.com\/solved\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/jassweb.com\/wp-content\/uploads\/2021\/02\/jass-website-logo-1.png\",\"contentUrl\":\"https:\/\/jassweb.com\/wp-content\/uploads\/2021\/02\/jass-website-logo-1.png\",\"width\":693,\"height\":132,\"caption\":\"Jass Web\"},\"image\":{\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/person\/65c9c7b7958150c0dc8371fa35dd7c31\",\"name\":\"Kirat\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/jassweb.com\/solved\/wp-content\/litespeed\/avatar\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1776403586\",\"contentUrl\":\"https:\/\/jassweb.com\/solved\/wp-content\/litespeed\/avatar\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1776403586\",\"caption\":\"Kirat\"},\"sameAs\":[\"http:\/\/jassweb.com\"],\"url\":\"https:\/\/jassweb.com\/solved\/author\/jaspritsinghghumangmail-com\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"[Solved] Memory allocation when loading a really large image on Android - JassWeb","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/jassweb.com\/solved\/solved-memory-allocation-when-loading-a-really-large-image-on-android\/","og_locale":"en_US","og_type":"article","og_title":"[Solved] Memory allocation when loading a really large image on Android - JassWeb","og_description":"[ad_1] First things first, 14.5 MB is the size of the JPEG but not the size of your actual image. Similarly, try to resave the image as png, you will see that size is increased by factors of 10, i.e. it might even reach 150 MB One thing that you must keep in mind is ... Read more","og_url":"https:\/\/jassweb.com\/solved\/solved-memory-allocation-when-loading-a-really-large-image-on-android\/","og_site_name":"JassWeb","article_published_time":"2022-10-07T15:59:02+00:00","author":"Kirat","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Kirat","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/jassweb.com\/solved\/solved-memory-allocation-when-loading-a-really-large-image-on-android\/#article","isPartOf":{"@id":"https:\/\/jassweb.com\/solved\/solved-memory-allocation-when-loading-a-really-large-image-on-android\/"},"author":{"name":"Kirat","@id":"https:\/\/jassweb.com\/solved\/#\/schema\/person\/65c9c7b7958150c0dc8371fa35dd7c31"},"headline":"[Solved] Memory allocation when loading a really large image on Android","datePublished":"2022-10-07T15:59:02+00:00","mainEntityOfPage":{"@id":"https:\/\/jassweb.com\/solved\/solved-memory-allocation-when-loading-a-really-large-image-on-android\/"},"wordCount":205,"publisher":{"@id":"https:\/\/jassweb.com\/solved\/#organization"},"keywords":["android","bitmap","out-of-memory"],"articleSection":["Solved"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/jassweb.com\/solved\/solved-memory-allocation-when-loading-a-really-large-image-on-android\/","url":"https:\/\/jassweb.com\/solved\/solved-memory-allocation-when-loading-a-really-large-image-on-android\/","name":"[Solved] Memory allocation when loading a really large image on Android - JassWeb","isPartOf":{"@id":"https:\/\/jassweb.com\/solved\/#website"},"datePublished":"2022-10-07T15:59:02+00:00","breadcrumb":{"@id":"https:\/\/jassweb.com\/solved\/solved-memory-allocation-when-loading-a-really-large-image-on-android\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/jassweb.com\/solved\/solved-memory-allocation-when-loading-a-really-large-image-on-android\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/jassweb.com\/solved\/solved-memory-allocation-when-loading-a-really-large-image-on-android\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/jassweb.com\/solved\/"},{"@type":"ListItem","position":2,"name":"[Solved] Memory allocation when loading a really large image on Android"}]},{"@type":"WebSite","@id":"https:\/\/jassweb.com\/solved\/#website","url":"https:\/\/jassweb.com\/solved\/","name":"JassWeb","description":"Build High-quality Websites","publisher":{"@id":"https:\/\/jassweb.com\/solved\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/jassweb.com\/solved\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/jassweb.com\/solved\/#organization","name":"Jass Web","url":"https:\/\/jassweb.com\/solved\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/jassweb.com\/solved\/#\/schema\/logo\/image\/","url":"https:\/\/jassweb.com\/wp-content\/uploads\/2021\/02\/jass-website-logo-1.png","contentUrl":"https:\/\/jassweb.com\/wp-content\/uploads\/2021\/02\/jass-website-logo-1.png","width":693,"height":132,"caption":"Jass Web"},"image":{"@id":"https:\/\/jassweb.com\/solved\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/jassweb.com\/solved\/#\/schema\/person\/65c9c7b7958150c0dc8371fa35dd7c31","name":"Kirat","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/jassweb.com\/solved\/#\/schema\/person\/image\/","url":"https:\/\/jassweb.com\/solved\/wp-content\/litespeed\/avatar\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1776403586","contentUrl":"https:\/\/jassweb.com\/solved\/wp-content\/litespeed\/avatar\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1776403586","caption":"Kirat"},"sameAs":["http:\/\/jassweb.com"],"url":"https:\/\/jassweb.com\/solved\/author\/jaspritsinghghumangmail-com\/"}]}},"_links":{"self":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/posts\/14449","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/comments?post=14449"}],"version-history":[{"count":0,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/posts\/14449\/revisions"}],"wp:attachment":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/media?parent=14449"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/categories?post=14449"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/tags?post=14449"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}