{"id":18039,"date":"2026-11-02T07:40:57","date_gmt":"2026-11-02T00:40:57","guid":{"rendered":"https:\/\/blogdee.com\/?p=18039"},"modified":"2026-11-02T07:40:57","modified_gmt":"2026-11-02T00:40:57","slug":"grab-%e0%b8%a5%e0%b8%94-anr-%e0%b9%84%e0%b8%94%e0%b9%89-32-%e0%b9%81%e0%b8%a5%e0%b8%b0%e0%b9%80%e0%b8%9e%e0%b8%b4%e0%b9%88%e0%b8%a1%e0%b9%80%e0%b8%a7%e0%b8%a5%e0%b8%b2%e0%b9%80%e0%b8%a3%e0%b8%b4","status":"publish","type":"post","link":"https:\/\/blogdee.com\/?p=18039","title":{"rendered":"Grab \u0e25\u0e14 ANR \u0e44\u0e14\u0e49 32% \u0e41\u0e25\u0e30\u0e40\u0e1e\u0e34\u0e48\u0e21\u0e40\u0e27\u0e25\u0e32\u0e40\u0e23\u0e34\u0e48\u0e21\u0e15\u0e49\u0e19\u0e41\u0e2d\u0e1b\u0e02\u0e36\u0e49\u0e19 35% \u0e14\u0e49\u0e27\u0e22 R8 \u0e41\u0e25\u0e30 Profile Guided Optimization"},"content":{"rendered":"<p>Grab \u0e0b\u0e36\u0e48\u0e07\u0e40\u0e1b\u0e47\u0e19\u0e0b\u0e39\u0e40\u0e1b\u0e2d\u0e23\u0e4c\u0e41\u0e2d\u0e1b\u0e0a\u0e31\u0e49\u0e19\u0e19\u0e33\u0e43\u0e19\u0e40\u0e2d\u0e40\u0e0a\u0e35\u0e22\u0e15\u0e30\u0e27\u0e31\u0e19\u0e2d\u0e2d\u0e01\u0e40\u0e09\u0e35\u0e22\u0e07\u0e43\u0e15\u0e49 \u0e43\u0e2b\u0e49\u0e1a\u0e23\u0e34\u0e01\u0e32\u0e23\u0e2b\u0e25\u0e32\u0e01\u0e2b\u0e25\u0e32\u0e22\u0e41\u0e01\u0e48\u0e1c\u0e39\u0e49\u0e43\u0e0a\u0e49\u0e2b\u0e25\u0e32\u0e22\u0e25\u0e49\u0e32\u0e19\u0e04\u0e19\u0e43\u0e19\u0e41\u0e1b\u0e14\u0e1b\u0e23\u0e30\u0e40\u0e17\u0e28 \u0e01\u0e48\u0e2d\u0e19\u0e01\u0e32\u0e23\u0e1b\u0e23\u0e31\u0e1a\u0e1b\u0e23\u0e38\u0e07\u0e01\u0e23\u0e30\u0e1a\u0e27\u0e19\u0e01\u0e32\u0e23 Build \u0e1e\u0e27\u0e01\u0e40\u0e02\u0e32\u0e1b\u0e23\u0e30\u0e2a\u0e1a\u0e1b\u0e31\u0e0d\u0e2b\u0e32 Cold start delay \u0e41\u0e25\u0e30 ANR spikes \u0e2b\u0e25\u0e31\u0e07\u0e01\u0e32\u0e23\u0e2d\u0e31\u0e1b\u0e40\u0e14\u0e15\u0e43\u0e2b\u0e21\u0e48 \u0e0b\u0e36\u0e48\u0e07\u0e2a\u0e48\u0e27\u0e19\u0e43\u0e2b\u0e0d\u0e48\u0e40\u0e01\u0e34\u0e14\u0e08\u0e32\u0e01\u0e04\u0e48\u0e32\u0e43\u0e0a\u0e49\u0e08\u0e48\u0e32\u0e22\u0e43\u0e19\u0e01\u0e32\u0e23\u0e2d\u0e48\u0e32\u0e19\u0e44\u0e1f\u0e25\u0e4c DEX \u0e08\u0e33\u0e19\u0e27\u0e19\u0e21\u0e32\u0e01\u0e23\u0e30\u0e2b\u0e27\u0e48\u0e32\u0e07\u0e01\u0e32\u0e23\u0e40\u0e23\u0e34\u0e48\u0e21\u0e15\u0e49\u0e19\u0e41\u0e2d\u0e1b<\/p>\n<p>\u0e41\u0e21\u0e49\u0e27\u0e48\u0e32 Google Play&#8217;s Cloud Profiles \u0e08\u0e30\u0e0a\u0e48\u0e27\u0e22\u0e1b\u0e23\u0e31\u0e1a\u0e1b\u0e23\u0e38\u0e07\u0e42\u0e1f\u0e25\u0e27\u0e4c\u0e21\u0e32\u0e15\u0e23\u0e10\u0e32\u0e19\u0e2a\u0e33\u0e2b\u0e23\u0e31\u0e1a\u0e1c\u0e39\u0e49\u0e43\u0e0a\u0e49\u0e2a\u0e48\u0e27\u0e19\u0e43\u0e2b\u0e0d\u0e48 \u0e41\u0e15\u0e48\u0e01\u0e47\u0e44\u0e21\u0e48\u0e44\u0e14\u0e49\u0e04\u0e23\u0e2d\u0e1a\u0e04\u0e25\u0e38\u0e21\u0e40\u0e2a\u0e49\u0e19\u0e17\u0e32\u0e07\u0e01\u0e32\u0e23\u0e40\u0e23\u0e34\u0e48\u0e21\u0e15\u0e49\u0e19\u0e17\u0e31\u0e49\u0e07\u0e2b\u0e21\u0e14\u0e17\u0e35\u0e48\u0e08\u0e33\u0e40\u0e1b\u0e47\u0e19\u0e2a\u0e33\u0e2b\u0e23\u0e31\u0e1a\u0e40\u0e2a\u0e49\u0e19\u0e17\u0e32\u0e07\u0e02\u0e2d\u0e07\u0e1c\u0e39\u0e49\u0e43\u0e0a\u0e49\u0e17\u0e35\u0e48\u0e2a\u0e33\u0e04\u0e31\u0e0d\u0e02\u0e2d\u0e07 Grab \u0e40\u0e0a\u0e48\u0e19 \u0e01\u0e32\u0e23\u0e40\u0e23\u0e34\u0e48\u0e21\u0e15\u0e49\u0e19 Dagger dependency graphs \u0e02\u0e13\u0e30\u0e40\u0e1b\u0e34\u0e14\u0e41\u0e2d\u0e1b<\/p>\n<p>\u0e01\u0e32\u0e23\u0e19\u0e33 custom Baseline Profile \u0e21\u0e32\u0e43\u0e0a\u0e49\u0e44\u0e14\u0e49\u0e0a\u0e48\u0e27\u0e22\u0e41\u0e01\u0e49\u0e44\u0e02\u0e1b\u0e31\u0e0d\u0e2b\u0e32\u0e19\u0e35\u0e49 \u0e42\u0e14\u0e22\u0e01\u0e32\u0e23\u0e19\u0e33\u0e40\u0e2a\u0e49\u0e19\u0e17\u0e32\u0e07\u0e02\u0e2d\u0e07\u0e1c\u0e39\u0e49\u0e43\u0e0a\u0e49\u0e17\u0e35\u0e48\u0e2a\u0e33\u0e04\u0e31\u0e0d\u0e40\u0e2b\u0e25\u0e48\u0e32\u0e19\u0e35\u0e49\u0e40\u0e02\u0e49\u0e32\u0e2a\u0e39\u0e48 Cloud Profiles \u0e02\u0e2d\u0e07 Google Play \u0e42\u0e14\u0e22\u0e15\u0e23\u0e07 \u0e17\u0e33\u0e43\u0e2b\u0e49\u0e40\u0e2a\u0e49\u0e19\u0e17\u0e32\u0e07\u0e2a\u0e33\u0e04\u0e31\u0e0d\u0e40\u0e2b\u0e25\u0e48\u0e32\u0e19\u0e35\u0e49\u0e16\u0e39\u0e01\u0e04\u0e2d\u0e21\u0e44\u0e1e\u0e25\u0e4c\u0e40\u0e1b\u0e47\u0e19 machine code \u0e17\u0e31\u0e19\u0e17\u0e35\u0e17\u0e35\u0e48\u0e15\u0e34\u0e14\u0e15\u0e31\u0e49\u0e07<\/p>\n<p>Nguyen Van Minh, Lead Software Engineer \u0e1a\u0e19 Grab&#8217;s Passenger App Core team \u0e01\u0e25\u0e48\u0e32\u0e27\u0e27\u0e48\u0e32 \u0e1e\u0e27\u0e01\u0e40\u0e02\u0e32\u0e1e\u0e1a\u0e27\u0e48\u0e32\u0e2d\u0e31\u0e15\u0e23\u0e32 ANR spikes \u0e40\u0e01\u0e34\u0e14\u0e02\u0e36\u0e49\u0e19\u0e2d\u0e22\u0e48\u0e32\u0e07\u0e15\u0e48\u0e2d\u0e40\u0e19\u0e37\u0e48\u0e2d\u0e07\u0e01\u0e31\u0e1a\u0e01\u0e32\u0e23\u0e1b\u0e25\u0e48\u0e2d\u0e22\u0e41\u0e2d\u0e1b\u0e23\u0e32\u0e22\u0e2a\u0e31\u0e1b\u0e14\u0e32\u0e2b\u0e4c<\/p>\n<p>\u0e14\u0e49\u0e27\u0e22\u0e01\u0e32\u0e23\u0e43\u0e0a\u0e49 R8 optimizations, Baseline Profiles \u0e41\u0e25\u0e30 Startup Profiles \u0e23\u0e48\u0e27\u0e21\u0e01\u0e31\u0e1a Profile guided optimization \u0e17\u0e33\u0e43\u0e2b\u0e49\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e40\u0e2b\u0e47\u0e19\u0e01\u0e32\u0e23\u0e1b\u0e23\u0e31\u0e1a\u0e1b\u0e23\u0e38\u0e07 Cold start \u0e44\u0e14\u0e49\u0e17\u0e31\u0e19\u0e17\u0e35 12% \u0e08\u0e32\u0e01 R8 \u0e41\u0e25\u0e30\u0e2d\u0e35\u0e01 15% \u0e08\u0e32\u0e01 Baseline Profiles \u0e2a\u0e48\u0e07\u0e1c\u0e25\u0e43\u0e2b\u0e49\u0e40\u0e27\u0e25\u0e32\u0e40\u0e23\u0e34\u0e48\u0e21\u0e15\u0e49\u0e19\u0e41\u0e2d\u0e1b\u0e40\u0e23\u0e47\u0e27\u0e02\u0e36\u0e49\u0e19 27% \u0e41\u0e25\u0e30\u0e01\u0e33\u0e08\u0e31\u0e14 ANR spikes \u0e2b\u0e25\u0e31\u0e07\u0e01\u0e32\u0e23\u0e1b\u0e25\u0e48\u0e2d\u0e22\u0e44\u0e14\u0e49\u0e2d\u0e22\u0e48\u0e32\u0e07\u0e21\u0e35\u0e1b\u0e23\u0e30\u0e2a\u0e34\u0e17\u0e18\u0e34\u0e20\u0e32\u0e1e<\/p>\n<h3>\u0e28\u0e31\u0e1e\u0e17\u0e4c\u0e17\u0e35\u0e48\u0e04\u0e27\u0e23\u0e23\u0e39\u0e49<\/h3>\n<ul>\n<li>Superapp &#8211; \u0e04\u0e37\u0e2d\u0e41\u0e2d\u0e1b\u0e1e\u0e25\u0e34\u0e40\u0e04\u0e0a\u0e31\u0e19\u0e40\u0e14\u0e35\u0e22\u0e27\u0e17\u0e35\u0e48\u0e23\u0e27\u0e21\u0e1a\u0e23\u0e34\u0e01\u0e32\u0e23\u0e2b\u0e25\u0e32\u0e22\u0e2d\u0e22\u0e48\u0e32\u0e07 \u0e40\u0e0a\u0e48\u0e19 \u0e01\u0e32\u0e23\u0e08\u0e31\u0e14\u0e2a\u0e48\u0e07 \u0e01\u0e32\u0e23\u0e40\u0e14\u0e34\u0e19\u0e17\u0e32\u0e07 \u0e41\u0e25\u0e30\u0e01\u0e32\u0e23\u0e40\u0e07\u0e34\u0e19\u0e44\u0e27\u0e49\u0e14\u0e49\u0e27\u0e22\u0e01\u0e31\u0e19<\/li>\n<li>ANR (App Not Responding) &#8211; \u0e04\u0e37\u0e2d\u0e2a\u0e16\u0e32\u0e19\u0e01\u0e32\u0e23\u0e13\u0e4c\u0e17\u0e35\u0e48\u0e41\u0e2d\u0e1b\u0e1e\u0e25\u0e34\u0e40\u0e04\u0e0a\u0e31\u0e19\u0e44\u0e21\u0e48\u0e15\u0e2d\u0e1a\u0e2a\u0e19\u0e2d\u0e07\u0e15\u0e48\u0e2d\u0e1c\u0e39\u0e49\u0e43\u0e0a\u0e49 \u0e17\u0e33\u0e43\u0e2b\u0e49\u0e14\u0e39\u0e40\u0e2b\u0e21\u0e37\u0e2d\u0e19\u0e27\u0e48\u0e32\u0e41\u0e2d\u0e1b\u0e04\u0e49\u0e32\u0e07<\/li>\n<li>DEX files &#8211; \u0e04\u0e37\u0e2d\u0e44\u0e1f\u0e25\u0e4c\u0e17\u0e35\u0e48\u0e40\u0e01\u0e47\u0e1a\u0e42\u0e04\u0e49\u0e14\u0e02\u0e2d\u0e07\u0e41\u0e2d\u0e1b\u0e1e\u0e25\u0e34\u0e40\u0e04\u0e0a\u0e31\u0e19 \u0e0b\u0e36\u0e48\u0e07\u0e15\u0e49\u0e2d\u0e07\u0e43\u0e0a\u0e49\u0e40\u0e27\u0e25\u0e32\u0e43\u0e19\u0e01\u0e32\u0e23\u0e2d\u0e48\u0e32\u0e19\u0e40\u0e21\u0e37\u0e48\u0e2d\u0e41\u0e2d\u0e1b\u0e40\u0e23\u0e34\u0e48\u0e21\u0e15\u0e49\u0e19<\/li>\n<li>R8 optimizations &#8211; \u0e04\u0e37\u0e2d\u0e01\u0e23\u0e30\u0e1a\u0e27\u0e19\u0e01\u0e32\u0e23\u0e1b\u0e23\u0e31\u0e1a\u0e1b\u0e23\u0e38\u0e07\u0e42\u0e04\u0e49\u0e14\u0e02\u0e2d\u0e07\u0e41\u0e2d\u0e1b\u0e1e\u0e25\u0e34\u0e40\u0e04\u0e0a\u0e31\u0e19\u0e43\u0e2b\u0e49\u0e21\u0e35\u0e02\u0e19\u0e32\u0e14\u0e40\u0e25\u0e47\u0e01\u0e25\u0e07\u0e41\u0e25\u0e30\u0e17\u0e33\u0e07\u0e32\u0e19\u0e44\u0e14\u0e49\u0e40\u0e23\u0e47\u0e27\u0e02\u0e36\u0e49\u0e19<\/li>\n<li>Baseline Profile &#8211; \u0e04\u0e37\u0e2d\u0e0a\u0e38\u0e14\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25\u0e17\u0e35\u0e48\u0e0a\u0e48\u0e27\u0e22\u0e43\u0e2b\u0e49\u0e23\u0e30\u0e1a\u0e1a\u0e23\u0e39\u0e49\u0e27\u0e48\u0e32\u0e40\u0e2a\u0e49\u0e19\u0e17\u0e32\u0e07\u0e2a\u0e33\u0e04\u0e31\u0e0d\u0e02\u0e2d\u0e07\u0e41\u0e2d\u0e1b\u0e04\u0e37\u0e2d\u0e2d\u0e30\u0e44\u0e23 \u0e41\u0e25\u0e30\u0e04\u0e27\u0e23\u0e04\u0e2d\u0e21\u0e44\u0e1e\u0e25\u0e4c\u0e43\u0e2b\u0e49\u0e1e\u0e23\u0e49\u0e2d\u0e21\u0e43\u0e0a\u0e49\u0e07\u0e32\u0e19\u0e17\u0e31\u0e19\u0e17\u0e35<\/li>\n<\/ul>\n<p>\u0e17\u0e35\u0e48\u0e21\u0e32: <a href=\"https:\/\/developer.android.com\/blog\/posts\/grab-r8-profile-guided-optimization-anr-startup-time\">developer.android.com<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Grab \u0e0b\u0e36\u0e48\u0e07\u0e40\u0e1b\u0e47\u0e19\u0e0b\u0e39\u0e40\u0e1b\u0e2d\u0e23\u0e4c\u0e41\u0e2d\u0e1b\u0e0a\u0e31\u0e49\u0e19\u0e19\u0e33\u0e43\u0e19\u0e40\u0e2d\u0e40\u0e0a\u0e35\u0e22\u0e15\u0e30\u0e27\u0e31\u0e19\u0e2d\u0e2d\u0e01\u0e40\u0e09\u0e35\u0e22\u0e07\u0e43\u0e15\u0e49 \u0e44\u0e14\u0e49\u0e40\u0e1c\u0e0a\u0e34\u0e0d\u0e1b\u0e31\u0e0d\u0e2b\u0e32 Cold start delay \u0e41\u0e25\u0e30 ANR spikes \u0e2b\u0e25\u0e31\u0e07\u0e2d\u0e31\u0e1b\u0e40\u0e14\u0e15\u0e43\u0e2b\u0e21\u0e48\u2026<\/p>\n","protected":false},"author":1,"featured_media":18038,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5105],"tags":[163,6559,1759,6558],"class_list":["post-18039","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-algorithms-math","tag-android","tag-anr","tag-optimization","tag-r8"],"_links":{"self":[{"href":"https:\/\/blogdee.com\/index.php?rest_route=\/wp\/v2\/posts\/18039","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogdee.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogdee.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogdee.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blogdee.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=18039"}],"version-history":[{"count":0,"href":"https:\/\/blogdee.com\/index.php?rest_route=\/wp\/v2\/posts\/18039\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blogdee.com\/index.php?rest_route=\/wp\/v2\/media\/18038"}],"wp:attachment":[{"href":"https:\/\/blogdee.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=18039"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogdee.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=18039"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogdee.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=18039"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}