{"id":3579,"date":"2026-09-23T10:10:58","date_gmt":"2026-09-23T10:10:58","guid":{"rendered":"https:\/\/dev95.site\/now-in-android-116\/"},"modified":"2026-09-23T10:10:58","modified_gmt":"2026-09-23T10:10:58","slug":"now-in-android-116","status":"publish","type":"post","link":"https:\/\/dev95.site\/ar\/now-in-android-116\/","title":{"rendered":"Now in Android #116"},"content":{"rendered":"<div id=\"dev95-3118200752\" class=\"dev95-- dev95-entity-placement\"><script async=\"async\" data-cfasync=\"false\" src=\"https:\/\/pl27862732.profitableratecpmnetwork.com\/2ad7a50e0bbc23ac6801d7b77c501463\/invoke.js\"><\/script>\r\n<div id=\"container-2ad7a50e0bbc23ac6801d7b77c501463\"><\/div><\/div><div>\n<figure><img data-recalc-dims=\"1\" decoding=\"async\" alt=\"\" src=\"https:\/\/i0.wp.com\/cdn-images-1.medium.com\/max\/1024\/1%2ASy3ea40KCd6LSmU6QFUgDA.png?w=1280&#038;ssl=1\"><\/figure>\n<h4>Google IO program lineup, Jetpack Compose 1.8, Play Console insights Android Vitals Metrics, Testing at Scale blog series and AndroidX!<\/h4>\n<p>Welcome to Now in Android, your ongoing guide to what\u2019s new and notable in the world of Android development.<\/p>\n<p>In this edition, we\u2019ll cover the <a href=\"http:\/\/android-developers.googleblog.com\/2025\/04\/google-io-program-lineup-revealed.html\">Google IO program lineup<\/a>, what\u2019s new in <a href=\"http:\/\/android-developers.googleblog.com\/2025\/04\/whats-new-in-jetpack-compose-april-25.html\">Jetpack Compose 1.8<\/a>, the redesigned <a href=\"http:\/\/android-developers.googleblog.com\/2025\/04\/play-console-insights.html\">Play Console<\/a> app dashboard, new <a href=\"http:\/\/android-developers.googleblog.com\/2025\/04\/boost-app-performance-and-battery-life-android-vitals-metrics.html\">Android Vitals Metrics<\/a>, the launch of the <a href=\"https:\/\/medium.com\/androiddevelopers\/introducing-testing-at-scale-blog-series-8cd300ae2795?source=rss----95b274b437c2---4\">Testing at Scale blog series<\/a>, and the latest in AndroidX.<\/p><div id=\"dev95-1308437908\" class=\"dev95- dev95-entity-placement\"><center>\r\n<script>\r\n  atOptions = {\r\n    'key' : '4ba6b6513c00e0ba76511f798ae56401',\r\n    'format' : 'iframe',\r\n    'height' : 50,\r\n    'width' : 320,\r\n    'params' : {}\r\n  };\r\n<\/script>\r\n<script src=\"https:\/\/www.highrevenueformat.com\/4ba6b6513c00e0ba76511f798ae56401\/invoke.js\"><\/script>\r\n\t<\/center><\/div>\n<p><iframe loading=\"lazy\" src=\"https:\/\/cdn.embedly.com\/widgets\/media.html?src=https%3A%2F%2Fwww.youtube.com%2Fembed%2FYOvD5nQe7Bk%3Ffeature%3Doembed&amp;display_name=YouTube&amp;url=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DYOvD5nQe7Bk&amp;image=https%3A%2F%2Fi.ytimg.com%2Fvi%2FYOvD5nQe7Bk%2Fhqdefault.jpg&amp;type=text%2Fhtml&amp;schema=youtube\" width=\"854\" height=\"480\" frameborder=\"0\" scrolling=\"no\"><a href=\"https:\/\/medium.com\/media\/f791874912c70580592d3dc0ac12e0fa\/href\">https:\/\/medium.com\/media\/f791874912c70580592d3dc0ac12e0fa\/href<\/a><\/iframe><iframe loading=\"lazy\" src=\"https:\/\/cdn.embedly.com\/widgets\/media.html?src=%2F%2Fhtml5-player.libsyn.com%2Fembed%2Fepisode%2Fid%2F36487490%2Fheight%2F90%2Ftheme%2Fcustom%2Fthumbnail%2Fyes%2Fdirection%2Fforward%2Frender-playlist%2Fno%2Fcustom-color%2F88AA3C%2F&amp;display_name=Libsyn&amp;url=https%3A%2F%2Fnowinandroid.libsyn.com%2F116-google-io-gemini-and-jetpack-compose-18&amp;image=https%3A%2F%2Fassets.libsyn.com%2Fsecure%2Fitem%2F36487490&amp;type=text%2Fhtml&amp;schema=libsyn\" width=\"600\" height=\"90\" frameborder=\"0\" scrolling=\"no\"><a href=\"https:\/\/medium.com\/media\/514683104227eecfef6dcedea0d6ddb4\/href\">https:\/\/medium.com\/media\/514683104227eecfef6dcedea0d6ddb4\/href<\/a><\/iframe><\/p>\n<p>Most of the content of this post is available in the form of a <a href=\"https:\/\/youtu.be\/YOvD5nQe7Bk\">video<\/a> or <a href=\"http:\/\/nowinandroid.libsyn.com\/116-google-io-gemini-and-jetpack-compose-18\">podcast<\/a>, so feel free to <a href=\"https:\/\/youtu.be\/YOvD5nQe7Bk\">watch<\/a> or <a href=\"http:\/\/nowinandroid.libsyn.com\/116-google-io-gemini-and-jetpack-compose-18\">listen<\/a> rather than read on. (Or do all three to help you remember! There won\u2019t be a\u00a0quiz.)<\/p>\n<h3><a href=\"https:\/\/android-developers.googleblog.com\/\">Articles \ud83d\udcda<\/a><\/h3>\n<figure><img decoding=\"async\" alt=\"\" src=\"https:\/\/cdn-images-1.medium.com\/max\/1024\/0*vWVUW4sfVXz8x0g_\"><\/figure>\n<h3><a href=\"http:\/\/android-developers.googleblog.com\/2025\/04\/google-io-program-lineup-revealed.html\">Get ready for Google I\/O: Program lineup revealed\u00a0\ud83d\uddd3\ufe0f<\/a><\/h3>\n<p>The Google I\/O agenda is now available, and you can register to explore sessions on AI, Android, Web, and Cloud, taking place May 20\u201321. The Google Keynote will be on May 20th at 10:00 AM PT, with the Developer Keynote at 1:30 PM PT. You can join online for livestreams May 20\u201321, with on-demand sessions and codelabs on May 22. Sessions will cover AI advancements using Gemini models, building apps for multiple devices using Google AI, and new features for web development.<\/p>\n<p><a href=\"http:\/\/android-developers.googleblog.com\/2025\/04\/google-io-program-lineup-revealed.html\">Get ready for Google I\/O: Program lineup revealed<\/a><\/p>\n<figure><img decoding=\"async\" alt=\"\" src=\"https:\/\/cdn-images-1.medium.com\/max\/1024\/0*IVvLBDLF9S2RYMRB\"><\/figure>\n<h3><a href=\"http:\/\/android-developers.googleblog.com\/2025\/04\/whats-new-in-jetpack-compose-april-25.html\">What\u2019s new in the Jetpack Compose April \u201925 release\u00a0\ud83d\ude80<\/a><\/h3>\n<p>Jetpack Compose 1.8 is out with new features, API updates, and bug fixes. You can upgrade your Compose BOM version to 2025.04.01 to use the new\u00a0release.<\/p>\n<p>Here are some of the key\u00a0updates:<\/p>\n<ul>\n<li>You can now integrate Autofill functionality into your Compose applications.<\/li>\n<li>The new autoSize parameter lets the text size adapt to the container size<\/li>\n<li>The <a href=\"https:\/\/developer.android.com\/reference\/kotlin\/androidx\/compose\/ui\/layout\/package-summary#%28androidx.compose.ui.Modifier%29.onLayoutRectChanged%28kotlin.Long,kotlin.Long,kotlin.Function1%29\">onLayoutRectChanged<\/a> modifier solves many use cases that the existing onGloballyPositioned modifier does; however, it does so with much less overhead.<\/li>\n<li><a href=\"https:\/\/developer.android.com\/reference\/kotlin\/androidx\/compose\/ui\/layout\/LookaheadScope\">LookaheadScope<\/a> is stable and includes numerous performance and stability improvements, and includes a new modifier, <a href=\"https:\/\/developer.android.com\/reference\/kotlin\/androidx\/compose\/animation\/package-summary#%28androidx.compose.ui.Modifier%29.animateBounds%28androidx.compose.ui.layout.LookaheadScope,androidx.compose.ui.Modifier,androidx.compose.animation.BoundsTransform,kotlin.Boolean%29\">animateBounds<\/a><\/li>\n<\/ul>\n<p>Check out the <a href=\"http:\/\/android-developers.googleblog.com\/2025\/04\/whats-new-in-jetpack-compose-april-25.html\">post<\/a> to learn everything new in Jetpack Compose\u00a01.8.<\/p>\n<p><a href=\"http:\/\/android-developers.googleblog.com\/2025\/04\/whats-new-in-jetpack-compose-april-25.html\">What&#8217;s new in the Jetpack Compose April &#8217;25 release<\/a><\/p>\n<figure><img data-recalc-dims=\"1\" decoding=\"async\" alt=\"\" src=\"https:\/\/i0.wp.com\/cdn-images-1.medium.com\/max\/1024\/1%2AH1Vs8OCU1m3lw2u1oHCmOA.gif?w=1280&#038;ssl=1\"><\/figure>\n<h3><a href=\"http:\/\/android-developers.googleblog.com\/2025\/04\/the-fourth-beta-of-android-16.html\">The Fourth Beta of Android 16\u00a0\ud83e\udd16<\/a><\/h3>\n<p>Android 16 Beta 4 is out, marking the final scheduled update and platform stability. The developer APIs and app-facing behaviors are finalized.<\/p>\n<p>Apps targeting Android 16 can now be made available in Google Play. This release includes the latest fixes and optimizations. Consider testing your apps against behavior changes around JobScheduler, broadcasts, ART, intents, 16KB page size, accessibility, and Bluetooth.<\/p>\n<p>Note that if you develop an SDK, library, tool, or game engine, it\u2019s even more important to prepare any necessary updates now to prevent your downstream app and game developers from being blocked by compatibility issues and allow them to target the latest SDK features.<\/p>\n<p>While the API and behaviors are final and we are very close to release, we\u2019d still like you to <a href=\"https:\/\/developer.android.com\/about\/versions\/16\/feedback\">report issues<\/a> on the <a href=\"https:\/\/developer.android.com\/about\/versions\/16\/feedback\">feedback page<\/a>. The earlier we get your feedback, the better chance we\u2019ll be able to address it in this or a future\u00a0release.<\/p>\n<p><a href=\"http:\/\/android-developers.googleblog.com\/2025\/04\/the-fourth-beta-of-android-16.html\">The Fourth Beta of Android 16<\/a><\/p>\n<figure><img decoding=\"async\" alt=\"\" src=\"https:\/\/cdn-images-1.medium.com\/max\/1024\/0*TDc5QjEiGpJeaeXv\"><\/figure>\n<h3><a href=\"http:\/\/android-developers.googleblog.com\/2025\/04\/play-console-insights.html\">From dashboards to deeper data: Improve app quality and performance with new Play Console insights\u00a0\ud83d\udcf1<\/a><\/h3>\n<p>The Google Play Console has a redesigned app dashboard that centralizes quality-focused metrics, helping you improve app performance and user experience. The dashboard groups metrics into four core developer objectives:<\/p>\n<ul>\n<li>test and\u00a0release<\/li>\n<li>monitor and\u00a0improve<\/li>\n<li>grow users<\/li>\n<li>monetize with\u00a0Play<\/li>\n<\/ul>\n<p>A new notification center helps you stay up to date with your account and apps. New metrics\u00a0include:<\/p>\n<ul>\n<li>pre-review checks for incorrect edge-to-edge rendering<\/li>\n<li>a low memory kill\u00a0metric<\/li>\n<li>excessive wake locks in Android\u00a0vitals<\/li>\n<\/ul>\n<p>To stay informed about all the latest Play Console enhancements and easily find updates relevant to your workflow, explore our new <a href=\"https:\/\/play.google.com\/console\/about\/whats-new\/\">What\u2019s new in Play Console<\/a> page, where you can filter features by the four developer objectives.<\/p>\n<p><a href=\"http:\/\/android-developers.googleblog.com\/2025\/04\/play-console-insights.html\">From dashboards to deeper data: Improve app quality and performance with new Play Console insights<\/a><\/p>\n<figure><img decoding=\"async\" alt=\"\" src=\"https:\/\/cdn-images-1.medium.com\/max\/1024\/0*RPzGXFRSoh5UuYBv\"><\/figure>\n<h3><a href=\"http:\/\/android-developers.googleblog.com\/2025\/04\/boost-app-performance-and-battery-life-android-vitals-metrics.html\">Boost app performance and battery life: New Android Vitals Metrics are here\u00a0\ud83d\udd0b<\/a><\/h3>\n<p>The Android Developers blog announced new Android Vitals metrics aiming to help you improve app performance and battery life. The new metrics provide fleet-wide visibility into performance and battery life, equipping you with the data needed to diagnose and resolve performance bottlenecks. We just launched the first of these new metrics in beta: excessive <a href=\"https:\/\/developer.android.com\/develop\/background-work\/background-tasks\/awake\/wakelock\">wake locks<\/a>. This metric directly addresses one of the most significant frustrations for Android users\u200a\u2014\u200aexcessive battery drain. By optimizing your app\u2019s wake lock behavior, you can significantly enhance battery life and user satisfaction.<\/p>\n<p>We launched the <a href=\"https:\/\/developer.android.com\/topic\/performance\/vitals\/excessive-wakelock\">excessive wake lock metric documentation<\/a> to provide clear guidance on interpreting the metrics. Please check out this page and provide feedback with your use case on this new metric. Your input is invaluable in refining these metrics before their general availability.<\/p>\n<p><a href=\"http:\/\/android-developers.googleblog.com\/2025\/04\/boost-app-performance-and-battery-life-android-vitals-metrics.html\">Boost app performance and battery life: New Android Vitals Metrics are here<\/a><\/p>\n<figure><img data-recalc-dims=\"1\" decoding=\"async\" alt=\"\" src=\"https:\/\/i0.wp.com\/cdn-images-1.medium.com\/max\/1024\/1%2AoyxmE-Ouj6U9w3DXwQXFVw.png?w=1280&#038;ssl=1\"><\/figure>\n<h3><a href=\"https:\/\/medium.com\/androiddevelopers\/introducing-testing-at-scale-blog-series-8cd300ae2795?source=rss----95b274b437c2---4\">Introducing Testing at Scale blog\u00a0series<\/a><\/h3>\n<p>Android Developers Blog launches \u201cTesting at Scale\u201d series, featuring real-world testing strategies and tips from large apps. This series complements the new \u201cTesting Strategies\u201d documentation and offers opportunities for developers to contribute their own experiences. Check out the first two parts posted\u00a0below:<\/p>\n<h3><a href=\"https:\/\/medium.com\/androiddevelopers\/netflix-app-testing-at-scale-eb4ef6b40124?source=rss----95b274b437c2---4\">Netflix App Testing At\u00a0Scale<\/a><\/h3>\n<p>In part 1 of the \u201cTesting at Scale\u201d series <a href=\"https:\/\/kenkyee.medium.com\/\"><strong>Ken Yee<\/strong><\/a>, Senior Engineer at Netflix, tells us about the challenges of testing a playback app at a massive scale and how they have evolved the testing strategy.<\/p>\n<p>Netflix\u2019s Android app development prioritizes comprehensive testing, especially on physical devices due to wide device support. They\u2019ve moved to native and are adopting Jetpack Compose. Their large team uses unit tests (Strikt, Turbine, Mockito, Hilt, Robolectric), screenshot tests (Paparazzi, Espresso accessibility), and device tests (Espresso, UIAutomator). Minimizing flakiness (state, async code) is key. They use a dedicated device lab and are exploring emulators, Roborazzi, and modular \u201cdemo apps\u201d to improve testing efficiency. The team has created a custom toolchain to isolate and notify engineers of flaky tests. Feature developers own all aspects of\u00a0testing.<\/p>\n<p><a href=\"https:\/\/medium.com\/androiddevelopers\/netflix-app-testing-at-scale-eb4ef6b40124\">Netflix App Testing At Scale<\/a><\/p>\n<h3><a href=\"https:\/\/medium.com\/androiddevelopers\/how-dropbox-leverages-testing-to-maintain-high-level-of-trust-at-scale-b7b1bdf6161e?source=rss----95b274b437c2---4\">How Dropbox leverages testing to maintain high level of trust at\u00a0scale<\/a><\/h3>\n<p>In part 2 of the \u201cTesting at Scale\u201d series <a href=\"https:\/\/social.harter.us\/@ryan\">Ryan Harter<\/a>, Staff Engineer at Dropbox, shares how the shape of Dropbox\u2019s testing pyramid changed over time, and what tools they use to get timely feedback.<\/p>\n<p>Dropbox\u2019s Android app development team utilizes a multi-faceted testing approach, emphasizing unit tests with tools like JUnit and Paparazzi for screenshot testing. They\u2019re reinvesting in end-to-end tests, leveraging their own Dropshots library for full instrumentation testing and are experimenting with Compose Preview Screenshot Testing. They also integrate manual testing with web-based tools and third-party services for scenarios difficult to automate. They are expanding Dropshots to support multiple device configurations.<\/p>\n<p><a href=\"https:\/\/medium.com\/androiddevelopers\/how-dropbox-leverages-testing-to-maintain-high-level-of-trust-at-scale-b7b1bdf6161e\">How Dropbox leverages testing to maintain high level of trust at scale<\/a><\/p>\n<h3><a href=\"https:\/\/developer.android.com\/jetpack\/androidx\/versions\/all-channel\">AndroidX Releases\u00a0\ud83d\ude80<\/a><\/h3>\n<p><strong>Key Highlights for Compose Developers:<\/strong><\/p>\n<p>We have a bunch of new Compose APIs in\u00a0alpha:<\/p>\n<p><a href=\"https:\/\/developer.android.com\/jetpack\/androidx\/releases\/compose-animation#1.9.0-alpha01\">Compose Animation Version 1.9.0-alpha01<\/a><\/p>\n<ul>\n<li>TabRow and ScrollableTabRow have been deprecated in favor of Primary and Secondary variants of each which are more performant and accurate to\u00a0spec.<\/li>\n<li>We added LocalResources composition local to query Resources. Calling LocalResources.current will recompose when the configuration changes, so calls to APIs such as stringResource() will return updated\u00a0values.<\/li>\n<\/ul>\n<p><a href=\"https:\/\/developer.android.com\/jetpack\/androidx\/releases\/compose-foundation#1.9.0-alpha01\">Compose Foundation Version 1.9.0-alpha01<\/a><\/p>\n<ul>\n<li>Breaking change: clickable, combinedClickable, selectable, toggleable, and triStateToggleable overloads without an Indication parameter now only support IndicationNodeFactory instances provided using LocalIndication. This change will apply when you recompile your usages of these modifiers using this version of Compose and is needed to enable improved performance, and allow Composable functions using these modifiers to skip during recomposition.<\/li>\n<\/ul>\n<p><a href=\"https:\/\/developer.android.com\/jetpack\/androidx\/releases\/compose-material#1.9.0-alpha01\">Compose Material Version 1.9.0-alpha01<\/a><\/p>\n<ul>\n<li>Text field decoration box APIs are no longer experimental<\/li>\n<li>runWithTimingDisabled is deprecated in favor of runWithMeasurementDisabled, which more clearly describes the behavior\u200a\u2014\u200aall metrics are\u00a0paused.<\/li>\n<\/ul>\n<p><a href=\"https:\/\/developer.android.com\/jetpack\/androidx\/releases\/compose-runtime#1.9.0-alpha01\">Compose Runtime Version 1.9.0-alpha01<\/a><\/p>\n<ul>\n<li>currentCompositeKeyHash is deprecated. Use currentCompositeKeyHashCode instead.<\/li>\n<li>@Stable, @Immutable, and @StableMarker have been moved to runtime-annotation (in a compatible way). You can now depend on runtime-annotation if you want to use these annotations from libraries that do not depend on\u00a0compose.<\/li>\n<li>@RememberInComposition was added\u200a\u2014\u200athis is an annotation that can mark constructors, functions, and property getters, to indicate that they must not be called directly inside composition, without being remembered.<\/li>\n<\/ul>\n<p><a href=\"https:\/\/developer.android.com\/jetpack\/androidx\/releases\/compose-ui#1.9.0-alpha01\">Compose UI Version 1.9.0-alpha01<\/a><\/p>\n<ul>\n<li>androidx.compose.ui.LocalSavedStateRegistryOwner is deprecated in favor of androidx.savedstate.compose.LocalSavedStateRegistryOwner.<\/li>\n<li>Modifier.keepScreenOn was added to set the display to not sleep while\u00a0present<\/li>\n<\/ul>\n<p><a href=\"https:\/\/developer.android.com\/jetpack\/androidx\/releases\/customview#customview-1.2.0\">CustomView Version 1.2.0<\/a>, <a href=\"https:\/\/developer.android.com\/jetpack\/androidx\/releases\/customview#customview-poolingcontainer-1.1.0\">CustomView-Poolingcontainer Version 1.1.0<\/a>, <a href=\"https:\/\/developer.android.com\/jetpack\/androidx\/releases\/leanback#1.2.0\">Leanback Leanback-Preference, Version 1.2.0<\/a>, <a href=\"https:\/\/developer.android.com\/jetpack\/androidx\/releases\/leanback#leanback-grid-1.0.0\">Leanback-Grid Version 1.0.0<\/a>, <a href=\"https:\/\/developer.android.com\/jetpack\/androidx\/releases\/leanback#1.1.0\">Leanback-Paging Leanback-Tab Version 1.1.0<\/a>, and <a href=\"https:\/\/developer.android.com\/jetpack\/androidx\/releases\/print#1.1.0\">Print Version 1.1.0<\/a> are all released in\u00a0stable.<\/p>\n<p><a href=\"https:\/\/developer.android.com\/jetpack\/androidx\/versions\/all-channel\">Recent Release Notes | Android Developers<\/a><\/p>\n<h3>Now then\u2026\u00a0\ud83d\udc4b<\/h3>\n<p>That\u2019s it for this edition, with <a href=\"http:\/\/android-developers.googleblog.com\/2025\/04\/google-io-program-lineup-revealed.html\">Google IO program lineup<\/a>, <a href=\"http:\/\/android-developers.googleblog.com\/2025\/04\/whats-new-in-jetpack-compose-april-25.html\">Jetpack Compose 1.8<\/a>, <a href=\"http:\/\/android-developers.googleblog.com\/2025\/04\/play-console-insights.html\">Play Console insights<\/a> <a href=\"http:\/\/android-developers.googleblog.com\/2025\/04\/boost-app-performance-and-battery-life-android-vitals-metrics.html\">Android Vitals Metrics<\/a>, <a href=\"https:\/\/medium.com\/androiddevelopers\/introducing-testing-at-scale-blog-series-8cd300ae2795?source=rss----95b274b437c2---4\">Testing at Scale blog series<\/a>, and the latest in AndroidX!<\/p>\n<p>Check back soon for your next update from the Android developer universe!<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/medium.com\/_\/stat?event=post.clientViewed&amp;referrerSource=full_rss&amp;postId=d442393ebeb3\" width=\"1\" height=\"1\" alt=\"\"><\/p>\n<hr>\n<p><a href=\"https:\/\/medium.com\/androiddevelopers\/now-in-android-116-d442393ebeb3\">Now in Android #116<\/a> was originally published in <a href=\"https:\/\/medium.com\/androiddevelopers\">Android Developers<\/a> on Medium, where people are continuing the conversation by highlighting and responding to this story.<\/p>\n<\/div>\n<div class=\"pvc_clear\"><\/div>\n<p id=\"pvc_stats_3579\" class=\"pvc_stats total_only\" data-element-id=\"3579\" style=\"\"><i class=\"pvc-stats-icon medium\" aria-hidden=\"true\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" version=\"1.0\" viewbox=\"0 0 502 315\" preserveaspectratio=\"xMidYMid meet\"><g transform=\"translate(0,332) scale(0.1,-0.1)\" fill=\"\" stroke=\"none\"><path d=\"M2394 3279 l-29 -30 -3 -207 c-2 -182 0 -211 15 -242 39 -76 157 -76 196 0 15 31 17 60 15 243 l-3 209 -33 29 c-26 23 -41 29 -80 29 -41 0 -53 -5 -78 -31z\"\/><path d=\"M3085 3251 c-45 -19 -58 -50 -96 -229 -47 -217 -49 -260 -13 -295 52 -53 146 -42 177 20 16 31 87 366 87 410 0 70 -86 122 -155 94z\"\/><path d=\"M1751 3234 c-13 -9 -29 -31 -37 -50 -12 -29 -10 -49 21 -204 19 -94 39 -189 45 -210 14 -50 54 -80 110 -80 34 0 48 6 76 34 21 21 34 44 34 59 0 14 -18 113 -40 219 -37 178 -43 195 -70 221 -36 32 -101 37 -139 11z\"\/><path d=\"M1163 3073 c-36 -7 -73 -59 -73 -102 0 -56 133 -378 171 -413 34 -32 83 -37 129 -13 70 36 67 87 -16 290 -86 209 -89 214 -129 231 -35 14 -42 15 -82 7z\"\/><path d=\"M3689 3066 c-15 -9 -33 -30 -42 -48 -48 -103 -147 -355 -147 -375 0 -98 131 -148 192 -74 13 15 57 108 97 206 80 196 84 226 37 273 -30 30 -99 39 -137 18z\"\/><path d=\"M583 2784 c-38 -19 -67 -74 -58 -113 9 -42 211 -354 242 -373 16 -10 45 -18 66 -18 51 0 107 52 107 100 0 39 -1 41 -124 234 -80 126 -108 162 -133 173 -41 17 -61 16 -100 -3z\"\/><path d=\"M4250 2784 c-14 -9 -74 -91 -133 -183 -95 -150 -107 -173 -107 -213 0 -55 33 -94 87 -104 67 -13 90 8 211 198 130 202 137 225 78 284 -27 27 -42 34 -72 34 -22 0 -50 -8 -64 -16z\"\/><path d=\"M2275 2693 c-553 -48 -1095 -270 -1585 -649 -135 -104 -459 -423 -483 -476 -23 -49 -22 -139 2 -186 73 -142 361 -457 571 -626 285 -228 642 -407 990 -497 242 -63 336 -73 660 -74 310 0 370 5 595 52 535 111 1045 392 1455 803 122 121 250 273 275 326 19 41 19 137 0 174 -41 79 -309 363 -465 492 -447 370 -946 591 -1479 653 -113 14 -422 18 -536 8z m395 -428 c171 -34 330 -124 456 -258 112 -119 167 -219 211 -378 27 -96 24 -300 -5 -401 -72 -255 -236 -447 -474 -557 -132 -62 -201 -76 -368 -76 -167 0 -236 14 -368 76 -213 98 -373 271 -451 485 -162 444 86 934 547 1084 153 49 292 57 452 25z m909 -232 c222 -123 408 -262 593 -441 76 -74 138 -139 138 -144 0 -16 -233 -242 -330 -319 -155 -123 -309 -223 -461 -299 l-81 -41 32 46 c18 26 49 83 70 128 143 306 141 649 -6 957 -25 52 -61 116 -79 142 l-34 47 45 -20 c26 -10 76 -36 113 -56z m-2057 25 c-40 -58 -105 -190 -130 -263 -110 -324 -59 -707 132 -981 25 -35 42 -64 37 -64 -19 0 -241 119 -326 174 -188 122 -406 314 -532 468 l-58 71 108 103 c185 178 428 349 672 473 66 33 121 60 123 61 2 0 -10 -19 -26 -42z\"\/><path d=\"M2375 1950 c-198 -44 -350 -190 -395 -379 -18 -76 -8 -221 19 -290 114 -284 457 -406 731 -260 98 52 188 154 231 260 27 69 37 214 19 290 -38 163 -166 304 -326 360 -67 23 -215 33 -279 19z\"\/><\/g><\/svg><\/i> <img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"16\" height=\"16\" alt=\"Loading\" src=\"https:\/\/i0.wp.com\/dev95.site\/wp-content\/plugins\/page-views-count\/ajax-loader-2x.gif?resize=16%2C16&#038;ssl=1\" border=\"0\" \/><\/p>\n<div class=\"pvc_clear\"><\/div>","protected":false},"excerpt":{"rendered":"<p>Google IO program lineup, Jetpack Compose 1.8, Play Console insights Android Vitals Metrics, Testing at Scale blog series and AndroidX! Welcome to Now in Android, your ongoing guide to what\u2019s new and notable in the world of Android development. In<\/p>\n<div class=\"hosteria-entry-more\"><a href=\"https:\/\/dev95.site\/ar\/now-in-android-116\/\" class=\"no-underline font-light  group-hover:text-primary-800 dark:group-hover:text-primary-300 py-1\">Read more &gt;&gt;&gt;<\/a><\/div>\n<div class=\"pvc_clear\"><\/div>\n<p id=\"pvc_stats_3579\" class=\"pvc_stats total_only\" data-element-id=\"3579\" style=\"\"><i class=\"pvc-stats-icon medium\" aria-hidden=\"true\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" version=\"1.0\" viewbox=\"0 0 502 315\" preserveaspectratio=\"xMidYMid meet\"><g transform=\"translate(0,332) scale(0.1,-0.1)\" fill=\"\" stroke=\"none\"><path d=\"M2394 3279 l-29 -30 -3 -207 c-2 -182 0 -211 15 -242 39 -76 157 -76 196 0 15 31 17 60 15 243 l-3 209 -33 29 c-26 23 -41 29 -80 29 -41 0 -53 -5 -78 -31z\"\/><path d=\"M3085 3251 c-45 -19 -58 -50 -96 -229 -47 -217 -49 -260 -13 -295 52 -53 146 -42 177 20 16 31 87 366 87 410 0 70 -86 122 -155 94z\"\/><path d=\"M1751 3234 c-13 -9 -29 -31 -37 -50 -12 -29 -10 -49 21 -204 19 -94 39 -189 45 -210 14 -50 54 -80 110 -80 34 0 48 6 76 34 21 21 34 44 34 59 0 14 -18 113 -40 219 -37 178 -43 195 -70 221 -36 32 -101 37 -139 11z\"\/><path d=\"M1163 3073 c-36 -7 -73 -59 -73 -102 0 -56 133 -378 171 -413 34 -32 83 -37 129 -13 70 36 67 87 -16 290 -86 209 -89 214 -129 231 -35 14 -42 15 -82 7z\"\/><path d=\"M3689 3066 c-15 -9 -33 -30 -42 -48 -48 -103 -147 -355 -147 -375 0 -98 131 -148 192 -74 13 15 57 108 97 206 80 196 84 226 37 273 -30 30 -99 39 -137 18z\"\/><path d=\"M583 2784 c-38 -19 -67 -74 -58 -113 9 -42 211 -354 242 -373 16 -10 45 -18 66 -18 51 0 107 52 107 100 0 39 -1 41 -124 234 -80 126 -108 162 -133 173 -41 17 -61 16 -100 -3z\"\/><path d=\"M4250 2784 c-14 -9 -74 -91 -133 -183 -95 -150 -107 -173 -107 -213 0 -55 33 -94 87 -104 67 -13 90 8 211 198 130 202 137 225 78 284 -27 27 -42 34 -72 34 -22 0 -50 -8 -64 -16z\"\/><path d=\"M2275 2693 c-553 -48 -1095 -270 -1585 -649 -135 -104 -459 -423 -483 -476 -23 -49 -22 -139 2 -186 73 -142 361 -457 571 -626 285 -228 642 -407 990 -497 242 -63 336 -73 660 -74 310 0 370 5 595 52 535 111 1045 392 1455 803 122 121 250 273 275 326 19 41 19 137 0 174 -41 79 -309 363 -465 492 -447 370 -946 591 -1479 653 -113 14 -422 18 -536 8z m395 -428 c171 -34 330 -124 456 -258 112 -119 167 -219 211 -378 27 -96 24 -300 -5 -401 -72 -255 -236 -447 -474 -557 -132 -62 -201 -76 -368 -76 -167 0 -236 14 -368 76 -213 98 -373 271 -451 485 -162 444 86 934 547 1084 153 49 292 57 452 25z m909 -232 c222 -123 408 -262 593 -441 76 -74 138 -139 138 -144 0 -16 -233 -242 -330 -319 -155 -123 -309 -223 -461 -299 l-81 -41 32 46 c18 26 49 83 70 128 143 306 141 649 -6 957 -25 52 -61 116 -79 142 l-34 47 45 -20 c26 -10 76 -36 113 -56z m-2057 25 c-40 -58 -105 -190 -130 -263 -110 -324 -59 -707 132 -981 25 -35 42 -64 37 -64 -19 0 -241 119 -326 174 -188 122 -406 314 -532 468 l-58 71 108 103 c185 178 428 349 672 473 66 33 121 60 123 61 2 0 -10 -19 -26 -42z\"\/><path d=\"M2375 1950 c-198 -44 -350 -190 -395 -379 -18 -76 -8 -221 19 -290 114 -284 457 -406 731 -260 98 52 188 154 231 260 27 69 37 214 19 290 -38 163 -166 304 -326 360 -67 23 -215 33 -279 19z\"\/><\/g><\/svg><\/i> <img loading=\"lazy\" decoding=\"async\" width=\"16\" height=\"16\" alt=\"Loading\" src=\"https:\/\/dev95.site\/wp-content\/plugins\/page-views-count\/ajax-loader-2x.gif\" border=\"0\" \/><\/p>\n<div class=\"pvc_clear\"><\/div>","protected":false},"author":1,"featured_media":3580,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"fp_fajr_begins":"","fp_fajr_iqamah":"","fp_dhuhr_begins":"","fp_dhuhr_iqamah":"","fp_asr_begins":"","fp_asr_iqamah":"","fp_maghrib_begins":"","fp_maghrib_iqamah":"","fp_isha_begins":"","fp_isha_iqamah":"","fp_midnight":"","fp_midnight_name":"","fp_sunrise":"","fp_single_prayer_begins_title":"","fp_single_prayer_iqamah_title":"","fp_prayer_times_for_today":"","fp_hijra_date":"","fp_fajr_name":"","fp_dhuhr_name":"","fp_asr_name":"","fp_maghrib_name":"","fp_isha_name":"","fp_sunrise_name":"","fp_currentDate":"","fp_current_time":"","fp_current_title":"","fp_current_location":"","fp_masjid_name":"","fp_prayer_title":"","fp_next_prayer_iqamah_time":"","fp_next_prayer_iqamah_title":"","fp_next_prayer_begins_time":"","fp_next_prayer_begins_title":"","fp_next_prayer_title":"","_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_post_was_ever_published":false},"categories":[9],"tags":[],"class_list":["post-3579","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-android"],"a3_pvc":{"activated":true,"total_views":0,"today_views":0},"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Now in Android #116 - Dev95<\/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:\/\/dev95.site\/ar\/now-in-android-116\/\" \/>\n<meta property=\"og:locale\" content=\"ar_AR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Now in Android #116 - Dev95\" \/>\n<meta property=\"og:description\" content=\"Google IO program lineup, Jetpack Compose 1.8, Play Console insights Android Vitals Metrics, Testing at Scale blog series and AndroidX! Welcome to Now in Android, your ongoing guide to what\u2019s new and notable in the world of Android development. InRead more &gt;&gt;&gt;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/dev95.site\/ar\/now-in-android-116\/\" \/>\n<meta property=\"og:site_name\" content=\"Dev95\" \/>\n<meta property=\"article:published_time\" content=\"2026-09-23T10:10:58+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/cdn-images-1.medium.com\/max\/1024\/1*Sy3ea40KCd6LSmU6QFUgDA.png\" \/>\n<meta name=\"author\" content=\"dev95\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u0643\u064f\u062a\u0628 \u0628\u0648\u0627\u0633\u0637\u0629\" \/>\n\t<meta name=\"twitter:data1\" content=\"dev95\" \/>\n\t<meta name=\"twitter:label2\" content=\"\u0648\u0642\u062a \u0627\u0644\u0642\u0631\u0627\u0621\u0629 \u0627\u0644\u0645\u064f\u0642\u062f\u0651\u0631\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 \u062f\u0642\u0627\u0626\u0642\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/dev95.site\\\/now-in-android-116\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/dev95.site\\\/now-in-android-116\\\/\"},\"author\":{\"name\":\"dev95\",\"@id\":\"https:\\\/\\\/dev95.site\\\/#\\\/schema\\\/person\\\/b807805ffe2916206b04d0938bce0298\"},\"headline\":\"Now in Android #116\",\"datePublished\":\"2026-09-23T10:10:58+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/dev95.site\\\/now-in-android-116\\\/\"},\"wordCount\":1504,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/dev95.site\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/dev95.site\\\/now-in-android-116\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/i0.wp.com\\\/dev95.site\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/1Sy3ea40KCd6LSmU6QFUgDA.png?fit=1024%2C305&ssl=1\",\"articleSection\":[\"Android\"],\"inLanguage\":\"ar\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/dev95.site\\\/now-in-android-116\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/dev95.site\\\/now-in-android-116\\\/\",\"url\":\"https:\\\/\\\/dev95.site\\\/now-in-android-116\\\/\",\"name\":\"Now in Android #116 - Dev95\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/dev95.site\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/dev95.site\\\/now-in-android-116\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/dev95.site\\\/now-in-android-116\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/i0.wp.com\\\/dev95.site\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/1Sy3ea40KCd6LSmU6QFUgDA.png?fit=1024%2C305&ssl=1\",\"datePublished\":\"2026-09-23T10:10:58+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/dev95.site\\\/now-in-android-116\\\/#breadcrumb\"},\"inLanguage\":\"ar\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/dev95.site\\\/now-in-android-116\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"ar\",\"@id\":\"https:\\\/\\\/dev95.site\\\/now-in-android-116\\\/#primaryimage\",\"url\":\"https:\\\/\\\/i0.wp.com\\\/dev95.site\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/1Sy3ea40KCd6LSmU6QFUgDA.png?fit=1024%2C305&ssl=1\",\"contentUrl\":\"https:\\\/\\\/i0.wp.com\\\/dev95.site\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/1Sy3ea40KCd6LSmU6QFUgDA.png?fit=1024%2C305&ssl=1\",\"width\":1024,\"height\":305},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/dev95.site\\\/now-in-android-116\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/dev95.site\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Now in Android #116\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/dev95.site\\\/#website\",\"url\":\"https:\\\/\\\/dev95.site\\\/\",\"name\":\"Dev95\",\"description\":\"A comprehensive platform for data and knowledge, delivering reliable content that meets the aspirations of readers and enthusiasts.\",\"publisher\":{\"@id\":\"https:\\\/\\\/dev95.site\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/dev95.site\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"ar\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/dev95.site\\\/#organization\",\"name\":\"Dev95\",\"url\":\"https:\\\/\\\/dev95.site\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ar\",\"@id\":\"https:\\\/\\\/dev95.site\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/i0.wp.com\\\/dev95.site\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/rbrrbr-6.png?fit=512%2C512&ssl=1\",\"contentUrl\":\"https:\\\/\\\/i0.wp.com\\\/dev95.site\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/rbrrbr-6.png?fit=512%2C512&ssl=1\",\"width\":512,\"height\":512,\"caption\":\"Dev95\"},\"image\":{\"@id\":\"https:\\\/\\\/dev95.site\\\/#\\\/schema\\\/logo\\\/image\\\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/dev95.site\\\/#\\\/schema\\\/person\\\/b807805ffe2916206b04d0938bce0298\",\"name\":\"dev95\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ar\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/a70a73d950838b20cd80d7ebdc955737e802e8cd896044c5473b32b946c0662a?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/a70a73d950838b20cd80d7ebdc955737e802e8cd896044c5473b32b946c0662a?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/a70a73d950838b20cd80d7ebdc955737e802e8cd896044c5473b32b946c0662a?s=96&d=mm&r=g\",\"caption\":\"dev95\"},\"url\":\"https:\\\/\\\/dev95.site\\\/ar\\\/author\\\/mohammad\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Now in Android #116 - Dev95","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:\/\/dev95.site\/ar\/now-in-android-116\/","og_locale":"ar_AR","og_type":"article","og_title":"Now in Android #116 - Dev95","og_description":"Google IO program lineup, Jetpack Compose 1.8, Play Console insights Android Vitals Metrics, Testing at Scale blog series and AndroidX! Welcome to Now in Android, your ongoing guide to what\u2019s new and notable in the world of Android development. InRead more &gt;&gt;&gt;","og_url":"https:\/\/dev95.site\/ar\/now-in-android-116\/","og_site_name":"Dev95","article_published_time":"2026-09-23T10:10:58+00:00","og_image":[{"url":"https:\/\/cdn-images-1.medium.com\/max\/1024\/1*Sy3ea40KCd6LSmU6QFUgDA.png","type":"","width":"","height":""}],"author":"dev95","twitter_card":"summary_large_image","twitter_misc":{"\u0643\u064f\u062a\u0628 \u0628\u0648\u0627\u0633\u0637\u0629":"dev95","\u0648\u0642\u062a \u0627\u0644\u0642\u0631\u0627\u0621\u0629 \u0627\u0644\u0645\u064f\u0642\u062f\u0651\u0631":"7 \u062f\u0642\u0627\u0626\u0642"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/dev95.site\/now-in-android-116\/#article","isPartOf":{"@id":"https:\/\/dev95.site\/now-in-android-116\/"},"author":{"name":"dev95","@id":"https:\/\/dev95.site\/#\/schema\/person\/b807805ffe2916206b04d0938bce0298"},"headline":"Now in Android #116","datePublished":"2026-09-23T10:10:58+00:00","mainEntityOfPage":{"@id":"https:\/\/dev95.site\/now-in-android-116\/"},"wordCount":1504,"commentCount":0,"publisher":{"@id":"https:\/\/dev95.site\/#organization"},"image":{"@id":"https:\/\/dev95.site\/now-in-android-116\/#primaryimage"},"thumbnailUrl":"https:\/\/i0.wp.com\/dev95.site\/wp-content\/uploads\/2026\/09\/1Sy3ea40KCd6LSmU6QFUgDA.png?fit=1024%2C305&ssl=1","articleSection":["Android"],"inLanguage":"ar","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/dev95.site\/now-in-android-116\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/dev95.site\/now-in-android-116\/","url":"https:\/\/dev95.site\/now-in-android-116\/","name":"Now in Android #116 - Dev95","isPartOf":{"@id":"https:\/\/dev95.site\/#website"},"primaryImageOfPage":{"@id":"https:\/\/dev95.site\/now-in-android-116\/#primaryimage"},"image":{"@id":"https:\/\/dev95.site\/now-in-android-116\/#primaryimage"},"thumbnailUrl":"https:\/\/i0.wp.com\/dev95.site\/wp-content\/uploads\/2026\/09\/1Sy3ea40KCd6LSmU6QFUgDA.png?fit=1024%2C305&ssl=1","datePublished":"2026-09-23T10:10:58+00:00","breadcrumb":{"@id":"https:\/\/dev95.site\/now-in-android-116\/#breadcrumb"},"inLanguage":"ar","potentialAction":[{"@type":"ReadAction","target":["https:\/\/dev95.site\/now-in-android-116\/"]}]},{"@type":"ImageObject","inLanguage":"ar","@id":"https:\/\/dev95.site\/now-in-android-116\/#primaryimage","url":"https:\/\/i0.wp.com\/dev95.site\/wp-content\/uploads\/2026\/09\/1Sy3ea40KCd6LSmU6QFUgDA.png?fit=1024%2C305&ssl=1","contentUrl":"https:\/\/i0.wp.com\/dev95.site\/wp-content\/uploads\/2026\/09\/1Sy3ea40KCd6LSmU6QFUgDA.png?fit=1024%2C305&ssl=1","width":1024,"height":305},{"@type":"BreadcrumbList","@id":"https:\/\/dev95.site\/now-in-android-116\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/dev95.site\/"},{"@type":"ListItem","position":2,"name":"Now in Android #116"}]},{"@type":"WebSite","@id":"https:\/\/dev95.site\/#website","url":"https:\/\/dev95.site\/","name":"Dev95","description":"A comprehensive platform for data and knowledge, delivering reliable content that meets the aspirations of readers and enthusiasts.","publisher":{"@id":"https:\/\/dev95.site\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/dev95.site\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"ar"},{"@type":"Organization","@id":"https:\/\/dev95.site\/#organization","name":"Dev95","url":"https:\/\/dev95.site\/","logo":{"@type":"ImageObject","inLanguage":"ar","@id":"https:\/\/dev95.site\/#\/schema\/logo\/image\/","url":"https:\/\/i0.wp.com\/dev95.site\/wp-content\/uploads\/2026\/07\/rbrrbr-6.png?fit=512%2C512&ssl=1","contentUrl":"https:\/\/i0.wp.com\/dev95.site\/wp-content\/uploads\/2026\/07\/rbrrbr-6.png?fit=512%2C512&ssl=1","width":512,"height":512,"caption":"Dev95"},"image":{"@id":"https:\/\/dev95.site\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/dev95.site\/#\/schema\/person\/b807805ffe2916206b04d0938bce0298","name":"dev95","image":{"@type":"ImageObject","inLanguage":"ar","@id":"https:\/\/secure.gravatar.com\/avatar\/a70a73d950838b20cd80d7ebdc955737e802e8cd896044c5473b32b946c0662a?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/a70a73d950838b20cd80d7ebdc955737e802e8cd896044c5473b32b946c0662a?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/a70a73d950838b20cd80d7ebdc955737e802e8cd896044c5473b32b946c0662a?s=96&d=mm&r=g","caption":"dev95"},"url":"https:\/\/dev95.site\/ar\/author\/mohammad\/"}]}},"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"https:\/\/i0.wp.com\/dev95.site\/wp-content\/uploads\/2026\/09\/1Sy3ea40KCd6LSmU6QFUgDA.png?fit=1024%2C305&ssl=1","_links":{"self":[{"href":"https:\/\/dev95.site\/ar\/wp-json\/wp\/v2\/posts\/3579","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dev95.site\/ar\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dev95.site\/ar\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dev95.site\/ar\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/dev95.site\/ar\/wp-json\/wp\/v2\/comments?post=3579"}],"version-history":[{"count":0,"href":"https:\/\/dev95.site\/ar\/wp-json\/wp\/v2\/posts\/3579\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/dev95.site\/ar\/wp-json\/wp\/v2\/media\/3580"}],"wp:attachment":[{"href":"https:\/\/dev95.site\/ar\/wp-json\/wp\/v2\/media?parent=3579"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dev95.site\/ar\/wp-json\/wp\/v2\/categories?post=3579"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dev95.site\/ar\/wp-json\/wp\/v2\/tags?post=3579"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}