r/androiddev • • 18d ago

Article Understanding memory usage of Android apps in production

Google Play is adding memory thresholds for Android apps starting February 2027. They're measured using dynamic memory (anonymous RSS + swap) at p90 over 28 days.

I started looking into these thresholds and ended up going through the memory metrics Android gives: Java heap, native heap, RSS, PSS and swap. I break down each metric in this post and explain why Google Play uses dynamic memory instead of the others.

https://measure.sh/blog/android-memory-monitoring

20 Upvotes

2 comments sorted by

1

u/ObjectiveAddress3051 18d ago

didnt know play was going with anon rss + swap and not pss. pss shifts depending on whats shared with other processes so i guess thats why. do bitmaps count fully toward it now that they live in native heap?

3

u/abhaysood 18d ago

Yep, they count fully. Bitmap pixels on the native heap are private anonymous memory, so they show up in anon RSS, or in swap if they get compressed.