CINXE.COM
Learn about improving app quality : Google Play Academy
<!DOCTYPE html> <html class="" lang="en" dir="ltr"> <head> <script> window.Intellum = { ...window.Intellum, accountName: 'Google Play Academy', datepickerI18n: { previousMonth: "Previous Month", nextMonth: "Next Month", weekdays: ["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"], weekdaysShort: ["Sun","Mon","Tue","Wed","Thu","Fri","Sat"], months: ["January","February","March","April","May","June","July","August","September","October","November","December"], }, i18nStrings: { add_text_here: "Add text here", in_days: "in {{COUNT}} days", in_hours: "in {{COUNT}} hours", in_minutes: "in {{COUNT}} minutes", in_one_hour: "in 1 hour", in_one_minute: "in 1 minute", item_dropped: "\"{{ITEM NAME}}\" dropped at position {{POSITION}} of {{TOTAL ITEMS}}.", item_grabbed: "\"{{ITEM NAME}}\" grabbed. Current position: {{POSITION}} of {{TOTAL ITEMS}}. Use up and down keys to move the item, space bar to drop it, Escape to cancel.", item_move_canceled: "Move of \"{{ITEM NAME}}\" canceled.", item_moved_to_position: "\"{{ITEM NAME}}\" moved to position {{POSITION}} of {{TOTAL ITEMS}}.", item_moved_to_position_in_list: "\"{{ITEM NAME}}\" moved to position {{POSITION}} of {{TOTAL ITEMS}} in \"{{LIST NAME}}.\"", live_now: "LIVE NOW", loading: "Loading...", processing_ellipsis: "Processing...", remove: "Remove", removing_ellipsis: "Removing...", saving_ellipsis: "Saving...", search_results: "Search Results", showing_item_position_of_total: "Showing item {{POSITION}} of {{TOTAL ITEMS}}", start_creating_content: "Start creating content", there_was_a_problem_getting_your_updates: "There was a problem in getting your updates.", tomorrow: "tomorrow", topicsSuggestionEmpty: "Sorry. We've run out of suggested topics.", topicsSelectionEmpty: "No topics have been assigned to this activity.", topicsFollowedSelectionEmpty: "No topics have been followed yet.", upload_canceled: "The upload was canceled.", uploadfile_no_file_selected: "No file selected", uploadfile_uploading_msg: "Uploading {{FILENAME}}", uploadfile_error_format_msg: "{{FILENAME}} is not the correct file type. Please try again.", uploadfile_error_size_coursefile_msg: "{{FILENAME}} is too large. Size limit: 10MB for images, 3GB for videos and audio.", uploadfile_error_size_msg: "{{FILENAME}} is too big. Please try again.", uploadfile_error_msg: "There was a problem uploading {{FILENAME}}. Please try again.", uploading_ellipsis: "Uploading...", use_menu_edit_html: "Use menu to edit HTML", when_datepicket_widget_appears: "When the datepicker widget appears, use arrow keys to navigate dates and select a date.", }, mediumEditorI18n: { bold: "Bold", italic: "Italic", link: "Link", title: "Title", subtitle: "Subtitle", unorderedList: "Unordered List", orderedList: "Ordered List", quote: "Quote", linkPlaceholderText: "Paste or type a link...", save: "Save", close: "Close", }, properties: { courseContentFileSizeConstraintsInMB: { image: 10485760, video: 3221225472, audio: 3221225472, }, }, translation_paths: { 'ar': '/locales/ar.9ab301cc05087d57b43e521433a1a9cb.json', 'bg': '/locales/bg.b4b7449391388a49f819d452d24a43ea.json', 'bn': '/locales/bn.c779fe52eaa988df5bde08344e7df093.json', 'cs': '/locales/cs.898aa1620bc5182750602c91eed21d51.json', 'da': '/locales/da.4744bc38b807ae4b520f8ea3fffe770d.json', 'de': '/locales/de.045e8684dcde78cf3c92423329afafcc.json', 'el': '/locales/el.28615ca17789bedb8b30d063713d7454.json', 'en-AU': '/locales/en-AU.d9efdc799d9340c3f49596d4158f6aa2.json', 'en-CA': '/locales/en-CA.b37c119ee44d6c8cb32572dcf33d3c9e.json', 'en-GB': '/locales/en-GB.6cca833957bfce559474cf76370eb762.json', 'en-IN': '/locales/en-IN.b53c74b6bf763380c7d254e0198ced99.json', 'en-SG': '/locales/en-SG.2751e962376e0366ee752469c31707fe.json', 'en': '/locales/en.b615881492af8fbf347f55f7efdbe26c.json', 'es-419': '/locales/es-419.fc15de31024b69c010e7fcb93b37263d.json', 'es-MX': '/locales/es-MX.7a95c39c39f3231da5c6a4c5e9877350.json', 'es': '/locales/es.b7033090d8d24f286134c72e88bd0ef0.json', 'et': '/locales/et.465cb51cb8c5671097ea831abae21ee7.json', 'fi': '/locales/fi.0e4947f82f6669e87bf49a067b138d3b.json', 'fr-CA': '/locales/fr-CA.5b98f8ec97952e1eee13f0ba91d0dcf5.json', 'fr': '/locales/fr.0c908a9863f7bed088a85718abaf386e.json', 'he': '/locales/he.4eb99c8cd028e44dbbc1b42b81e61d94.json', 'hi': '/locales/hi.93f636b25eae72e2cbe8a02c1f86ff58.json', 'hr': '/locales/hr.d7a97312209a81a7dc8aad3a6f537db7.json', 'hu': '/locales/hu.edf6f72693cd659e003125c9e45b61c0.json', 'id': '/locales/id.9e958c201d4752e69db0facebf9c8543.json', 'it': '/locales/it.7e4e25c3f1b5a0afe298380f8bfdb9ee.json', 'ja': '/locales/ja.d8c8a6b6110436a8cd091af83a5f1859.json', 'kn': '/locales/kn.44c9a26aff92ee1598cbf6d0c33805eb.json', 'ko': '/locales/ko.73c4962c313284f36fff4f02c747c13b.json', 'lt': '/locales/lt.dd7ce29cf873eb4906722d08e1daed05.json', 'lv': '/locales/lv.7b2a36b833d20cff298f74df356e9e7e.json', 'mn': '/locales/mn.f7712d504d9400381de35af7990beb5f.json', 'mr': '/locales/mr.d16a7ed1ae1bf05768ac921bde7e2cc2.json', 'ms': '/locales/ms.4d3f25ed269d7d54520c49b38551888e.json', 'my': '/locales/my.ea0cec5295de7349b185ce452b79205d.json', 'nb': '/locales/nb.a7d246526e22819549e4924a0a2d0005.json', 'nl': '/locales/nl.805af11a9c7b61012a94e3bb1b900347.json', 'pl': '/locales/pl.428346f8eead658e1c66d570c82a7c1c.json', 'pt-BR': '/locales/pt-BR.61570a62d2fa191bc61556524bc98592.json', 'pt-PT': '/locales/pt-PT.f3749cede3e1f84cce4207a58c645474.json', 'ro': '/locales/ro.cfa73f3946b4fdaed235e9364f658329.json', 'ru': '/locales/ru.84949cbc6547b93e1826c58494155020.json', 'si': '/locales/si.1435cfa7223fd3feab15085abf82a607.json', 'sk': '/locales/sk.4f60f06321d19306eb60bb6ef937bb53.json', 'sl': '/locales/sl.d7dc91c15fa3481b3346772c36793ee5.json', 'sr-Cyrl': '/locales/sr-Cyrl.8bd5424e0aabd29939fd482a2426552c.json', 'sr-Latn': '/locales/sr-Latn.8f6ffbf8e194cc5f0d1a35df6580f21b.json', 'sv': '/locales/sv.fa1e9cb6c04d0d25264c1f5f4a87ee58.json', 'ta': '/locales/ta.d32b067736f2dd57d14e915926bda3ea.json', 'te': '/locales/te.d1f44adc47a2685930206c945a2f0fa3.json', 'th': '/locales/th.e57c037ecc0d746062e69b2f3550cfc5.json', 'tr': '/locales/tr.5a416590d39cd6f78820f2b4548b2770.json', 'uk': '/locales/uk.1cf10aa44f5e6b32d2de9ae3f9df6b2e.json', 'vi': '/locales/vi.b325c8aa00f8825b2d47f026b362e8d8.json', 'zh-CN': '/locales/zh-CN.f991c6651a4d6ca82698314e7348cd3b.json', 'zh-TW': '/locales/zh-TW.86fdf6ed5875492216ba19833c0211f0.json', }, }; </script> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <link rel="icon" type="image/png" href="https://storage.googleapis.com/exceedlms-external-uploads-production/uploads/organizations/favicons/52/small/logo-play-32px-clr.png?GoogleAccessId=GOOG1EIO7LXRUFV35UXSWKJ3AWMYHZUVNMYIAMGSBIFYEF2AMYYAY4Y4Y5PKA&Signature=eCtRK4UdzGana0TcsSmDjF2FX9o%3D&Expires=1732710048" sizes="16x16"> <link rel="icon" type="image/png" href="https://storage.googleapis.com/exceedlms-external-uploads-production/uploads/organizations/favicons/52/medium/logo-play-32px-clr.png?GoogleAccessId=GOOG1EIO7LXRUFV35UXSWKJ3AWMYHZUVNMYIAMGSBIFYEF2AMYYAY4Y4Y5PKA&Signature=v205JqyfMM2DVcwkGpQv2k3jwa8%3D&Expires=1732710048" sizes="32x32"> <link rel="icon" type="image/png" href="https://storage.googleapis.com/exceedlms-external-uploads-production/uploads/organizations/favicons/52/large/logo-play-32px-clr.png?GoogleAccessId=GOOG1EIO7LXRUFV35UXSWKJ3AWMYHZUVNMYIAMGSBIFYEF2AMYYAY4Y4Y5PKA&Signature=Kw6anJvTdmbbrbCWba69hqlD3lQ%3D&Expires=1732710048" sizes="96x96"> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta name="apple-mobile-web-app-capable" content="yes"> <meta name="apple-mobile-web-app-status-bar-style" content="white"> <title>Learn about improving app quality : Google Play Academy</title> <meta content="https://storage.googleapis.com/exceedlms-external-uploads-production/uploads/organizations/branding_logos/52/full/googleplayacademy-logo-fullcolor-2.png" property="og:image" /> <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:100,100i,300,300i,400,400i,500,500i,700,700i%7CLora:regular,italic,700,700i&subset=latin-ext" media="all" /> <link rel="stylesheet" href="/assets/google_play/all-539dee3c6f674bd7738cd22bb9ef42c38a30f259ad96d3f2481342983e6da9ca.css" media="all" /> <link rel="stylesheet" href="/theme/52-play-academy-default-branding-org/1732704682/styles-8fac5610964b7b93cc750b80aca195c0.css" media="all" /> <meta name="csrf-param" content="authenticity_token" /> <meta name="csrf-token" content="pPA6SXrSgKk7znXXFi-6IhRhiHVIytW1rzSaS9pA0eLyqTbtCHOK54YGe1O2N08v4Yv9xbNuqObl3fgiBVKfdg" /> <script> window.dataLayer = window.dataLayer || []; window.dataLayer.push( {'user_id': null} ); window.dataLayer.push({'cluster': "google_external"}); window.dataLayer.push({'environment': "production"}) </script> <script> window.IntellumDataLayer = window.IntellumDataLayer || {"account":{"id":1011,"name":"Google Play Academy"},"organization":{"id":52,"code":null,"name":"Play Academy default branding org"},"user":null,"course":null,"course_session":null,"enrollment":null,"page_type":"search_result_page","search":{"results":4}}; </script> <!-- Intellum GA4 script --> <script async src="https://www.googletagmanager.com/gtag/js?id=G-9QZZZPK0JH"></script> <script> window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'G-9QZZZPK0JH'); </script> <script> window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; ga('create', 'UA-45326746-3', 'auto', {'name': 'intellumTracker'}); ga('intellumTracker.set', 'anonymizeIp', true); ga('intellumTracker.send', 'pageview'); </script> <script type="text/javascript" async src='https://www.google-analytics.com/analytics.js'></script> </head> <body class="body--logged-out" data-controller="catalogs" data-action="list" data-custom-ui="google_play"> <!-- Google Tag Manager --> <noscript><iframe src="//www.googletagmanager.com/ns.html?id=GTM-P7VQDTC" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> <script type="text/javascript" >(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= '//www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-P7VQDTC');</script> <!-- End Google Tag Manager --> <a href="#main" class="skip2content"> Skip to main content </a> <div id="gdpr-consent" class="consent u-orgcolor--bg"> <div class="consent__content"> <span class="consent__text">This site uses cookies to provide you with a greater user experience. By using Exceed LMS, you accept our <a href='https://www.intellum.com/privacy-policy' target='_BLANK' class='whatsnew__link'>use of cookies</a>.</span> </div> <div class="consent__actions"> <button type="button" id="gdpr-consent__button" class="consent__close" aria-label="Close"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 35 35" aria-hidden="true" class="consent__icon btnicon" focusable="false"> <g aria-hidden="true" fill="currentColor"> <path d="M11.84,24.57 L24.57,11.84 L23.16,10.43 L10.43,23.16 z"></path> <path d="M10.43,11.84 L23.16,24.57 L24.57,23.16 L11.84,10.43 z"></path> </g> </svg> </button> </div> </div> <div class="appheader appheader--exceed u-org--header"> <div class="appheader__navigation"> <div class="appheader__section appheader__section--title u-org--header"> <exceed-nav-menu trigger-el-selector=".appheader__button--appnavmobile" menu-el-selector=".appnav--mobile" menu-visible-class="appnav--mobilevisible" option-el-selector=".navmenu__option"> <button type="button" class="appheader__button appheader__button--appnavmobile u-org--header" aria-label="Toggle Navigation"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 35 35" aria-hidden="true" class="appheader__icon" focusable="false"> <path aria-hidden="true" d="M8.5 23.5h18v-2h-18v2zm0-5h18v-2h-18v2zm0-7v2h18v-2h-18z" fill="currentColor"></path> <path aria-hidden="true" fill="none" d="M0 0h35v35H0z"></path> </svg> </button> <nav class="appnav appnav--mobile"> <ul class="appnav__list--mobile"> <li class="navmenu__listitem--mobile navmenu__option"> <a class="appnav__link appnav__link--mobile" href="/student/catalog"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" class="appnav__icon appnav__icon--left" focusable="false"> <g aria-hidden="true" fill="currentColor"> <path d="M12,3L4,9v12h16V9L12,3z M18,19h-3v-6H9v6H6v-9l6-4.5l6,4.5V19z"></path> </g> </svg> <span class="appnav__label"> Home </span> </a></li> <li class="navmenu__listitem--mobile navmenu__option"> <a class="appnav__link appnav__link--mobile" target="_blank" href="https://play.google.com/academy/"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" class="appnav__icon appnav__icon--left" focusable="false"> <g aria-hidden="true" fill="currentColor"> <path d="M19,5v14H5V5H19 M19,3H5C3.897,3.003,3.003,3.897,3,5v14c0.003,1.103,0.897,1.997,2,2h14c1.103-0.003,1.997-0.897,2-2V5 C20.997,3.897,20.103,3.003,19,3z M14,17H7v-2h7V17z M17,13H7v-2h10V13z M17,9H7V7h10V9z"></path> </g> </svg> <span class="appnav__label"> About Play Academy </span> </a></li> <li class="navmenu__listitem--mobile navmenu__option"> <a class="appnav__link appnav__link--mobile" target="_blank" href="https://play.google.com/apps/publish/"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" class="appnav__icon appnav__icon--left" focusable="false"> <g aria-hidden="true" fill="currentColor"> <path d="M23,8c0,1.1-0.9,2-2,2c-0.18,0-0.35-0.02-0.51-0.07l-3.56,3.55C16.98,13.64,17,13.82,17,14c0,1.1-0.9,2-2,2s-2-0.9-2-2 c0-0.18,0.02-0.36,0.07-0.52l-2.55-2.55C10.36,10.98,10.18,11,10,11s-0.36-0.02-0.52-0.07l-4.55,4.56C4.98,15.65,5,15.82,5,16 c0,1.1-0.9,2-2,2s-2-0.9-2-2s0.9-2,2-2c0.18,0,0.35,0.02,0.51,0.07l4.56-4.55C8.02,9.36,8,9.18,8,9c0-1.1,0.9-2,2-2s2,0.9,2,2 c0,0.18-0.02,0.36-0.07,0.52l2.55,2.55C14.64,12.02,14.82,12,15,12s0.36,0.02,0.52,0.07l3.55-3.56C19.02,8.35,19,8.18,19,8 c0-1.1,0.9-2,2-2S23,6.9,23,8z"></path> </g> </svg> <span class="appnav__label"> Play Console </span> </a></li> <li class="navmenu__listitem--mobile navmenu__option"> <a class="appnav__link appnav__link--mobile" target="_blank" href="https://playacademy.exceedlms.com/student/activity/9389?use_locale=true"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" class="appnav__icon appnav__icon--left" focusable="false"> <g aria-hidden="true" fill="currentColor"> <path d="M20,2H4C2.899,2.006,2.01,2.899,2.01,4L2,22l4-4h14c1.103-0.003,1.997-0.897,2-2V4C21.997,2.897,21.103,2.003,20,2z M20,16 H5.17l-0.59,0.59L4,17.17V4h16V16z M11,12h2v2h-2V12z M11,6h2v4h-2V6z"></path> </g> </svg> <span class="appnav__label"> Feedback </span> </a></li> </ul> </nav> </exceed-nav-menu> <a class="appheader__titlelink u-org--header" href="/"><img class="appheader__titleimage" alt="Google Play Academy" src="https://storage.googleapis.com/exceedlms-external-uploads-production/uploads/organizations/branding_logos/52/full/googleplayacademy-logo-fullcolor-2.png?GoogleAccessId=GOOG1EIO7LXRUFV35UXSWKJ3AWMYHZUVNMYIAMGSBIFYEF2AMYYAY4Y4Y5PKA&Signature=EQ9ix%2B4meh%2Buc%2B5Cll1y8Rn6KtM%3D&Expires=1732710228" /></a> <nav class="appnav"> <ul class="appnav__list"> <li class="appnav__listitem"> <a class="appnav__link hint hint--bottom u-org--header u-orgcolor--borderhover" data-hint="Home" data-hide-hint-on-click="true" data-hint-is-label="true" href="/student/catalog"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" class="appnav__icon" focusable="false"> <g aria-hidden="true" fill="currentColor"> <path d="M12,3L4,9v12h16V9L12,3z M18,19h-3v-6H9v6H6v-9l6-4.5l6,4.5V19z"></path> </g> </svg> </a></li> <li class="appnav__listitem"> <a class="appnav__link hint hint--bottom u-org--header u-orgcolor--borderhover" target="_blank" data-hint="About Play Academy" data-hide-hint-on-click="true" data-hint-is-label="true" href="https://play.google.com/academy/"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" class="appnav__icon" focusable="false"> <g aria-hidden="true" fill="currentColor"> <path d="M19,5v14H5V5H19 M19,3H5C3.897,3.003,3.003,3.897,3,5v14c0.003,1.103,0.897,1.997,2,2h14c1.103-0.003,1.997-0.897,2-2V5 C20.997,3.897,20.103,3.003,19,3z M14,17H7v-2h7V17z M17,13H7v-2h10V13z M17,9H7V7h10V9z"></path> </g> </svg> </a></li> <li class="appnav__listitem"> <a class="appnav__link hint hint--bottom u-org--header u-orgcolor--borderhover" target="_blank" data-hint="Play Console" data-hide-hint-on-click="true" data-hint-is-label="true" href="https://play.google.com/apps/publish/"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" class="appnav__icon" focusable="false"> <g aria-hidden="true" fill="currentColor"> <path d="M23,8c0,1.1-0.9,2-2,2c-0.18,0-0.35-0.02-0.51-0.07l-3.56,3.55C16.98,13.64,17,13.82,17,14c0,1.1-0.9,2-2,2s-2-0.9-2-2 c0-0.18,0.02-0.36,0.07-0.52l-2.55-2.55C10.36,10.98,10.18,11,10,11s-0.36-0.02-0.52-0.07l-4.55,4.56C4.98,15.65,5,15.82,5,16 c0,1.1-0.9,2-2,2s-2-0.9-2-2s0.9-2,2-2c0.18,0,0.35,0.02,0.51,0.07l4.56-4.55C8.02,9.36,8,9.18,8,9c0-1.1,0.9-2,2-2s2,0.9,2,2 c0,0.18-0.02,0.36-0.07,0.52l2.55,2.55C14.64,12.02,14.82,12,15,12s0.36,0.02,0.52,0.07l3.55-3.56C19.02,8.35,19,8.18,19,8 c0-1.1,0.9-2,2-2S23,6.9,23,8z"></path> </g> </svg> </a></li> <li class="appnav__listitem"> <a class="appnav__link hint hint--bottom u-org--header u-orgcolor--borderhover" target="_blank" data-hint="Feedback" data-hide-hint-on-click="true" data-hint-is-label="true" href="https://playacademy.exceedlms.com/student/activity/9389?use_locale=true"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" class="appnav__icon" focusable="false"> <g aria-hidden="true" fill="currentColor"> <path d="M20,2H4C2.899,2.006,2.01,2.899,2.01,4L2,22l4-4h14c1.103-0.003,1.997-0.897,2-2V4C21.997,2.897,21.103,2.003,20,2z M20,16 H5.17l-0.59,0.59L4,17.17V4h16V16z M11,12h2v2h-2V12z M11,6h2v4h-2V6z"></path> </g> </svg> </a></li> <li class="appnav__listitem" hidden> <exceed-nav-menu class="navmenu"> <button name="button" type="button" role="button" class="appnav__link appnav__link--more navmenu__trigger u-org--header" aria-haspopup="true" aria-expanded="false" aria-label="More"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18" aria-hidden="true" class="appnav__icon" focusable="false"> <g aria-hidden="true" fill="currentColor"> <path d="M9,6c0.825,0,1.5-0.675,1.5-1.5S9.825,3,9,3S7.5,3.675,7.5,4.5S8.175,6,9,6z M9,7.5C8.175,7.5,7.5,8.175,7.5,9s0.675,1.5,1.5,1.5s1.5-0.675,1.5-1.5S9.825,7.5,9,7.5z M9,12c-0.825,0-1.5,0.675-1.5,1.5S8.175,15,9,15s1.5-0.675,1.5-1.5 S9.825,12,9,12z"></path> </g> </svg> </button> <ul class="appnav__sublist navmenu__menu"></ul> </exceed-nav-menu> </li> </ul> </nav> </div> <div class="appheader__section u-org--header"> <exceed-nav-menu class="appheader__search" trigger-el-selector=".appheader__searchbutton" blur-trigger-el-selector=".appsearch__backdrop" menu-el-selector=".appheader__searchmenu" menu-visible-class="appheader__searchmenu--visible" trigger-active-class="appheader__searchbutton--active" dynamic-content-container-selector=".appsearch__recommendations" dynamic-content-endpoint="/student/catalog/recommend_for_user" is-dynamic-content-delayed="true" > <button class="button button--toggle appheader__searchbutton u-org--header" aria-haspopup="true" aria-expanded="false" data-object-name="header_search" > <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32" aria-hidden="true" class="appheader__icon appheader__icon--searchbuttonicon appheader__searchbuttonicon--inactive" focusable="false"> <g aria-hidden="true" fill="currentColor"> <path d="M13.935,9.25 C16.243,9.252 18.229,10.885 18.677,13.149 C19.126,15.413 17.914,17.679 15.781,18.562 C13.648,19.445 11.189,18.699 9.906,16.78 C8.623,14.861 8.874,12.303 10.505,10.67 C11.412,9.757 12.648,9.245 13.935,9.25 M13.935,8.25 C11.149,8.25 8.751,10.219 8.208,12.952 C7.665,15.684 9.128,18.42 11.702,19.486 C14.276,20.552 17.245,19.651 18.792,17.334 C20.34,15.017 20.035,11.93 18.065,9.96 C16.97,8.864 15.484,8.249 13.935,8.25 L13.935,8.25 z"></path> <path d="M23.425,23.75 C23.293,23.748 23.167,23.694 23.075,23.6 L17.885,18.41 C17.689,18.214 17.689,17.896 17.885,17.7 C18.081,17.504 18.399,17.504 18.595,17.7 L23.785,22.89 C23.934,23.033 23.979,23.253 23.899,23.443 C23.82,23.634 23.631,23.755 23.425,23.75 z"></path> </g> </svg> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" aria-hidden="true" class="appheader__icon appheader__icon--searchbuttonicon appheader__searchbuttonicon--active" focusable="false"> <g fill="currentColor" aria-hidden="true"> <path d="M8 0.5C3.8525 0.5 0.5 3.8525 0.5 8C0.5 12.1475 3.8525 15.5 8 15.5C12.1475 15.5 15.5 12.1475 15.5 8C15.5 3.8525 12.1475 0.5 8 0.5ZM11.75 10.6925L10.6925 11.75L8 9.0575L5.3075 11.75L4.25 10.6925L6.9425 8L4.25 5.3075L5.3075 4.25L8 6.9425L10.6925 4.25L11.75 5.3075L9.0575 8L11.75 10.6925Z"></path> </g> </svg> <span class="appheader__searchbuttontext">Search</span> </button> <div class="appheader__searchmenu"> <div class="appsearch appsearch--menu"> <form class="appsearch__form appsearch__form--menu" action="/student/catalog/list"> <input type="search" name="search" id="app-search" class="appsearch__input" placeholder="Search..." value="" aria-label="Search" data-search-path="/student/catalog/list" data-is-menu-focus="true" /> </form> <div class="appsearch__recommendations"></div> </div> <div class="appsearch__backdrop"></div> </div> </exceed-nav-menu> <div class="direct-login"> <a href="/authentication/google_authentication" class="button button--primary button--appheader"> Log In </a> </div> </div> </div> </div> <main class="main main--student" id="main" data-save-state="scroll.y" data-reset-state="true"> <header class="categoryheader"> <div class="categoryheader__content"> <div class="categoryheader__title"> <h1 class="u-headingpage" data-test-target=learn-about-improving-app-quality> Learn about improving app quality </h1> </div> <a class="categoryheader__backlink backlink" href="/student/catalog/browse"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 35 35" aria-hidden="true" class="backlink__icon" focusable="false"> <g aria-hidden="true" fill="currentColor"> <path d="M20.185,23.86 L21.245,22.8 L15.885,17.45 L21.155,12.2 L20.095,11.14 L13.755,17.46 L20.185,23.86 z"></path> </g> </svg> All Topics </a> </div> <div class="categoryheader__actions categoryheader__actions--withbacklink"> </div> </header> <div class="main__header main__header--search"> </div> <section class="main__content main__content--categories"> <div class="filterlayout"> <div class="filterlayout__heading filterlayout__heading--categories"> <exceed-filter-counter class="a11y-atonly" text-property="counterA11yText" aria-live="assertive" aria-atomic="true"> 4 results returned </exceed-filter-counter> <div class="filterlayout__mainheading filterlayout__mainheading--nofilters"> <form id="topic-search-form" class="search" action="/student/catalog/list"> <input type="hidden" name="inline_search" id="hidden-search-field-inline_search" value="true" autocomplete="off" /> <input type="hidden" name="category_ids" id="hidden-search-field-category_ids" value="1788" autocomplete="off" /> <input type="hidden" name="duration" id="hidden-search-field-duration" autocomplete="off" /> <input type="hidden" name="difficulty" id="hidden-search-field-difficulty" autocomplete="off" /> <input type="hidden" name="sort" id="hidden-search-field-sort" value="relevance_category_sort" autocomplete="off" /> <input type="hidden" name="featured" id="hidden-search-field-featured" autocomplete="off" /> <input type="hidden" name="course_type" id="hidden-search-field-course_type" value="all" autocomplete="off" /> <input type="hidden" name="filter" id="hidden-search-field-filter" autocomplete="off" /> <label for="topic-search" class="search__label"> <span class="a11y-atonly">Search Topic</span> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" class="search__icon" focusable="false"> <g aria-hidden="true" fill="currentColor"> <path d="M15.5,14h-0.79l-0.28-0.27C15.41,12.59,16,11.11,16,9.5C16,5.91,13.09,3,9.5,3S3,5.91,3,9.5S5.91,16,9.5,16 c1.61,0,3.09-0.59,4.23-1.57L14,14.71v0.79l5,4.99L20.49,19L15.5,14z M9.5,14C7.01,14,5,11.99,5,9.5S7.01,5,9.5,5S14,7.01,14,9.5 S11.99,14,9.5,14z"></path> </g> </svg> </label> <input type="search" name="search" id="topic-search" class="search__input" placeholder="Search Topic" value="" data-search-path="/student/catalog/list" /> <label for="topic-search" class="search__label search__label--focus" aria-hidden> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" class="search__icon" focusable="false"> <g aria-hidden="true" fill="currentColor"> <path d="M15.5,14h-0.79l-0.28-0.27C15.41,12.59,16,11.11,16,9.5C16,5.91,13.09,3,9.5,3S3,5.91,3,9.5S5.91,16,9.5,16 c1.61,0,3.09-0.59,4.23-1.57L14,14.71v0.79l5,4.99L20.49,19L15.5,14z M9.5,14C7.01,14,5,11.99,5,9.5S7.01,5,9.5,5S14,7.01,14,9.5 S11.99,14,9.5,14z"></path> </g> </svg> </label> <button type="submit" class="a11y-atonly">Submit</button> </form> </div> </div> <div class="filterlayout__main"> <exceed-filter-collector id="category-filter-collector" url-params='["category_ids", "search", "sort", "inline_search"]' > </exceed-filter-collector> <div class="filterlayout__content"> <exceed-filter-content class="filtercontent filtercontent--fadetransition" id="category-filtered-content" filter-collector-id="category-filter-collector" method="xhr" xhr-url="/student/catalog/list?remote=true" xhr-error-text="No results" counter-selector="[data-counter-a11y-text]" > <div data-counter-a11y-text="4 results returned"> <ul class="mediablocklist"> <li class="mediablocklist__item"> <article class="mediablock mediablock--row mediablock__row--narrow" data-course-id=13019 data-course-type=CourseCurriculum > <div class="mediablock__content"> <h2 class ="mediablock__title u-headingitem"> <a class="mediablock__link" data-object-name="search_result_item" href="/student/activity/13019-make-the-most-of-the-android-app-bundle-and-dynamic-delivery?sid=1e444265-637f-4dd9-9640-5ce0b47b4793&sid_i=0">Make the most of the Android App Bundle and dynamic delivery</a> </h2> <p class="mediablock__summary "> With Android App Bundles, you can significantly reduce the size of your apps while simplifying your release process. By using an Android App Bundle, you manage a single artifact that includes all of your app's compiled code, resources, and native... </p> <ul class="activitymeta activitycard__meta"> <li class="activitymeta__item activitymeta__item--type"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 15 15" aria-hidden="true" focusable="false"> <g aria-hidden="true" fill="currentColor"> <rect fill="none" width="15" height="15"></rect> <circle cx="1.5" cy="2.5" r="1.5"></circle> <path d="M1.5 7C1.776 7 2 7.224 2 7.5S1.776 8 1.5 8 1 7.776 1 7.5 1.224 7 1.5 7M1.5 6C0.672 6 0 6.672 0 7.5S0.672 9 1.5 9 3 8.328 3 7.5 2.328 6 1.5 6L1.5 6z"></path> <path d="M1.5 12C1.776 12 2 12.224 2 12.5S1.776 13 1.5 13 1 12.776 1 12.5 1.224 12 1.5 12M1.5 11C0.672 11 0 11.672 0 12.5S0.672 14 1.5 14 3 13.328 3 12.5 2.328 11 1.5 11L1.5 11z"></path> <line fill="none" stroke="currentColor" stroke-miterlimit="10" x1="1.5" y1="2" x2="1.5" y2="13"></line> <path d="M13.5 1.75h-8C5.224 1.75 5 1.974 5 2.25v0.5c0 0.276 0.224 0.5 0.5 0.5h8c0.276 0 0.5-0.224 0.5-0.5v-0.5C14 1.974 13.776 1.75 13.5 1.75L13.5 1.75z"></path> <path d="M13.5 6.75h-8C5.224 6.75 5 6.974 5 7.25v0.5c0 0.276 0.224 0.5 0.5 0.5h8c0.276 0 0.5-0.224 0.5-0.5v-0.5C14 6.974 13.776 6.75 13.5 6.75L13.5 6.75z"></path> <path d="M13.5 11.75h-8c-0.276 0-0.5 0.224-0.5 0.5v0.5c0 0.276 0.224 0.5 0.5 0.5h8c0.276 0 0.5-0.224 0.5-0.5v-0.5C14 11.974 13.776 11.75 13.5 11.75L13.5 11.75z"></path> </g> </svg> <span class="a11y-atonly">Path</span> </li> <li class="activitymeta__item"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 15 15" aria-hidden="true" focusable="false"> <g aria-hidden="true" fill="currentColor"> <polygon points="7.5 10.75 11.38 13.13 10.38 8.75 13.75 5.75 9.25 5.38 7.5 1.25 5.75 5.38 1.25 5.75 4.63 8.75 3.63 13.13 7.5 10.75"></polygon> <path d="M0,0H15V15H0Z" fill="none"></path> </g> </svg> <span class="a11y-atonly">Rating </span>5.0 </li> </ul> </div> <div class="mediablock__media"> <a tabindex="-1" data-object-name="search_result_item" aria-hidden="true" href="/student/activity/13019-make-the-most-of-the-android-app-bundle-and-dynamic-delivery?sid=1e444265-637f-4dd9-9640-5ce0b47b4793&sid_i=0"> <img class="mediablock__image" alt="" src="https://storage.googleapis.com/exceedlms-external-uploads-production/uploads/resource_course_pictures/targets/552553/w550/unnamed.jpg?GoogleAccessId=GOOG1EIO7LXRUFV35UXSWKJ3AWMYHZUVNMYIAMGSBIFYEF2AMYYAY4Y4Y5PKA&Signature=pM6ATUkeguW5q4uzE%2BVb5oYakLA%3D&Expires=1732706078" /> </a> </div> </article> </li> <li class="mediablocklist__item"> <article class="mediablock mediablock--row mediablock__row--narrow" data-course-id=16204 data-course-type=CourseCurriculum > <div class="mediablock__content"> <h2 class ="mediablock__title u-headingitem"> <a class="mediablock__link" data-object-name="search_result_item" href="/student/activity/16204-learn-more-about-google-play-policies?sid=1e444265-637f-4dd9-9640-5ce0b47b4793&sid_i=1">Learn more about Google Play policies</a> </h2> <p class="mediablock__summary "> A key to the Google Play mission is maintaining the safety and integrity of Google Play as a trusted source of high quality apps for users. To support this effort and keep an even playing field for developers, Google Play... </p> <ul class="activitymeta activitycard__meta"> <li class="activitymeta__item activitymeta__item--type"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 15 15" aria-hidden="true" focusable="false"> <g aria-hidden="true" fill="currentColor"> <rect fill="none" width="15" height="15"></rect> <circle cx="1.5" cy="2.5" r="1.5"></circle> <path d="M1.5 7C1.776 7 2 7.224 2 7.5S1.776 8 1.5 8 1 7.776 1 7.5 1.224 7 1.5 7M1.5 6C0.672 6 0 6.672 0 7.5S0.672 9 1.5 9 3 8.328 3 7.5 2.328 6 1.5 6L1.5 6z"></path> <path d="M1.5 12C1.776 12 2 12.224 2 12.5S1.776 13 1.5 13 1 12.776 1 12.5 1.224 12 1.5 12M1.5 11C0.672 11 0 11.672 0 12.5S0.672 14 1.5 14 3 13.328 3 12.5 2.328 11 1.5 11L1.5 11z"></path> <line fill="none" stroke="currentColor" stroke-miterlimit="10" x1="1.5" y1="2" x2="1.5" y2="13"></line> <path d="M13.5 1.75h-8C5.224 1.75 5 1.974 5 2.25v0.5c0 0.276 0.224 0.5 0.5 0.5h8c0.276 0 0.5-0.224 0.5-0.5v-0.5C14 1.974 13.776 1.75 13.5 1.75L13.5 1.75z"></path> <path d="M13.5 6.75h-8C5.224 6.75 5 6.974 5 7.25v0.5c0 0.276 0.224 0.5 0.5 0.5h8c0.276 0 0.5-0.224 0.5-0.5v-0.5C14 6.974 13.776 6.75 13.5 6.75L13.5 6.75z"></path> <path d="M13.5 11.75h-8c-0.276 0-0.5 0.224-0.5 0.5v0.5c0 0.276 0.224 0.5 0.5 0.5h8c0.276 0 0.5-0.224 0.5-0.5v-0.5C14 11.974 13.776 11.75 13.5 11.75L13.5 11.75z"></path> </g> </svg> <span class="a11y-atonly">Path</span> </li> <li class="activitymeta__item"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 15 15" aria-hidden="true" focusable="false"> <g aria-hidden="true" fill="currentColor"> <polygon points="7.5 10.75 11.38 13.13 10.38 8.75 13.75 5.75 9.25 5.38 7.5 1.25 5.75 5.38 1.25 5.75 4.63 8.75 3.63 13.13 7.5 10.75"></polygon> <path d="M0,0H15V15H0Z" fill="none"></path> </g> </svg> <span class="a11y-atonly">Rating </span>4.9 </li> </ul> </div> <div class="mediablock__media"> <a tabindex="-1" data-object-name="search_result_item" aria-hidden="true" href="/student/activity/16204-learn-more-about-google-play-policies?sid=1e444265-637f-4dd9-9640-5ce0b47b4793&sid_i=1"> <img class="mediablock__image" alt="" src="https://storage.googleapis.com/exceedlms-external-uploads-production/uploads/resource_course_pictures/targets/552603/w550/coverart-playpolicypath.png?GoogleAccessId=GOOG1EIO7LXRUFV35UXSWKJ3AWMYHZUVNMYIAMGSBIFYEF2AMYYAY4Y4Y5PKA&Signature=r226h6PuPjthKOAI7vdIvppHCSI%3D&Expires=1732708034" /> </a> </div> </article> </li> <li class="mediablocklist__item"> <article class="mediablock mediablock--row mediablock__row--narrow" data-course-id=4915 data-course-type=CourseCurriculum > <div class="mediablock__content"> <h2 class ="mediablock__title u-headingitem"> <a class="mediablock__link" data-object-name="search_result_item" href="/student/activity/4915-test-your-app-or-game?sid=1e444265-637f-4dd9-9640-5ce0b47b4793&sid_i=2">Test your app or game</a> </h2> <p class="mediablock__summary "> Testing can be a valuable step for your app, whether you have a production app and are preparing an update, or you have a new app and are looking to gather pre-launch feedback. You’ll learn about the different test methodologies,... </p> <ul class="activitymeta activitycard__meta"> <li class="activitymeta__item activitymeta__item--type"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 15 15" aria-hidden="true" focusable="false"> <g aria-hidden="true" fill="currentColor"> <rect fill="none" width="15" height="15"></rect> <circle cx="1.5" cy="2.5" r="1.5"></circle> <path d="M1.5 7C1.776 7 2 7.224 2 7.5S1.776 8 1.5 8 1 7.776 1 7.5 1.224 7 1.5 7M1.5 6C0.672 6 0 6.672 0 7.5S0.672 9 1.5 9 3 8.328 3 7.5 2.328 6 1.5 6L1.5 6z"></path> <path d="M1.5 12C1.776 12 2 12.224 2 12.5S1.776 13 1.5 13 1 12.776 1 12.5 1.224 12 1.5 12M1.5 11C0.672 11 0 11.672 0 12.5S0.672 14 1.5 14 3 13.328 3 12.5 2.328 11 1.5 11L1.5 11z"></path> <line fill="none" stroke="currentColor" stroke-miterlimit="10" x1="1.5" y1="2" x2="1.5" y2="13"></line> <path d="M13.5 1.75h-8C5.224 1.75 5 1.974 5 2.25v0.5c0 0.276 0.224 0.5 0.5 0.5h8c0.276 0 0.5-0.224 0.5-0.5v-0.5C14 1.974 13.776 1.75 13.5 1.75L13.5 1.75z"></path> <path d="M13.5 6.75h-8C5.224 6.75 5 6.974 5 7.25v0.5c0 0.276 0.224 0.5 0.5 0.5h8c0.276 0 0.5-0.224 0.5-0.5v-0.5C14 6.974 13.776 6.75 13.5 6.75L13.5 6.75z"></path> <path d="M13.5 11.75h-8c-0.276 0-0.5 0.224-0.5 0.5v0.5c0 0.276 0.224 0.5 0.5 0.5h8c0.276 0 0.5-0.224 0.5-0.5v-0.5C14 11.974 13.776 11.75 13.5 11.75L13.5 11.75z"></path> </g> </svg> <span class="a11y-atonly">Path</span> </li> <li class="activitymeta__item"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 15 15" aria-hidden="true" focusable="false"> <g aria-hidden="true" fill="currentColor"> <polygon points="7.5 10.75 11.38 13.13 10.38 8.75 13.75 5.75 9.25 5.38 7.5 1.25 5.75 5.38 1.25 5.75 4.63 8.75 3.63 13.13 7.5 10.75"></polygon> <path d="M0,0H15V15H0Z" fill="none"></path> </g> </svg> <span class="a11y-atonly">Rating </span>4.6 </li> </ul> </div> <div class="mediablock__media"> <a tabindex="-1" data-object-name="search_result_item" aria-hidden="true" href="/student/activity/4915-test-your-app-or-game?sid=1e444265-637f-4dd9-9640-5ce0b47b4793&sid_i=2"> <img class="mediablock__image" alt="" src="https://storage.googleapis.com/exceedlms-external-uploads-production/uploads/resource_course_pictures/targets/725531/w550/test-your-app-1.png?GoogleAccessId=GOOG1EIO7LXRUFV35UXSWKJ3AWMYHZUVNMYIAMGSBIFYEF2AMYYAY4Y4Y5PKA&Signature=1lmuelfd8FI0zUGQIdhQZJkMJEo%3D&Expires=1732708680" /> </a> </div> </article> </li> <li class="mediablocklist__item"> <article class="mediablock mediablock--row mediablock__row--narrow" data-course-id=6413 data-course-type=CourseCurriculum > <div class="mediablock__content"> <h2 class ="mediablock__title u-headingitem"> <a class="mediablock__link" data-object-name="search_result_item" href="/student/activity/6413-monitor-technical-performance?sid=1e444265-637f-4dd9-9640-5ce0b47b4793&sid_i=3">Monitor technical performance</a> </h2> <p class="mediablock__summary "> Learn how to use the Play Console to signal app quality issues, app stability, and bugs. </p> <ul class="activitymeta activitycard__meta"> <li class="activitymeta__item activitymeta__item--type"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 15 15" aria-hidden="true" focusable="false"> <g aria-hidden="true" fill="currentColor"> <rect fill="none" width="15" height="15"></rect> <circle cx="1.5" cy="2.5" r="1.5"></circle> <path d="M1.5 7C1.776 7 2 7.224 2 7.5S1.776 8 1.5 8 1 7.776 1 7.5 1.224 7 1.5 7M1.5 6C0.672 6 0 6.672 0 7.5S0.672 9 1.5 9 3 8.328 3 7.5 2.328 6 1.5 6L1.5 6z"></path> <path d="M1.5 12C1.776 12 2 12.224 2 12.5S1.776 13 1.5 13 1 12.776 1 12.5 1.224 12 1.5 12M1.5 11C0.672 11 0 11.672 0 12.5S0.672 14 1.5 14 3 13.328 3 12.5 2.328 11 1.5 11L1.5 11z"></path> <line fill="none" stroke="currentColor" stroke-miterlimit="10" x1="1.5" y1="2" x2="1.5" y2="13"></line> <path d="M13.5 1.75h-8C5.224 1.75 5 1.974 5 2.25v0.5c0 0.276 0.224 0.5 0.5 0.5h8c0.276 0 0.5-0.224 0.5-0.5v-0.5C14 1.974 13.776 1.75 13.5 1.75L13.5 1.75z"></path> <path d="M13.5 6.75h-8C5.224 6.75 5 6.974 5 7.25v0.5c0 0.276 0.224 0.5 0.5 0.5h8c0.276 0 0.5-0.224 0.5-0.5v-0.5C14 6.974 13.776 6.75 13.5 6.75L13.5 6.75z"></path> <path d="M13.5 11.75h-8c-0.276 0-0.5 0.224-0.5 0.5v0.5c0 0.276 0.224 0.5 0.5 0.5h8c0.276 0 0.5-0.224 0.5-0.5v-0.5C14 11.974 13.776 11.75 13.5 11.75L13.5 11.75z"></path> </g> </svg> <span class="a11y-atonly">Path</span> </li> <li class="activitymeta__item"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 15 15" aria-hidden="true" focusable="false"> <g aria-hidden="true" fill="currentColor"> <polygon points="7.5 10.75 11.38 13.13 10.38 8.75 13.75 5.75 9.25 5.38 7.5 1.25 5.75 5.38 1.25 5.75 4.63 8.75 3.63 13.13 7.5 10.75"></polygon> <path d="M0,0H15V15H0Z" fill="none"></path> </g> </svg> <span class="a11y-atonly">Rating </span>4.7 </li> </ul> </div> <div class="mediablock__media"> <a tabindex="-1" data-object-name="search_result_item" aria-hidden="true" href="/student/activity/6413-monitor-technical-performance?sid=1e444265-637f-4dd9-9640-5ce0b47b4793&sid_i=3"> <img class="mediablock__image" alt="" src="https://storage.googleapis.com/exceedlms-external-uploads-production/uploads/resource_course_pictures/targets/725599/w550/monitor-technical-performance.png?GoogleAccessId=GOOG1EIO7LXRUFV35UXSWKJ3AWMYHZUVNMYIAMGSBIFYEF2AMYYAY4Y4Y5PKA&Signature=URkJpZPGCqhrogRxz97VyAMEH%2F8%3D&Expires=1732706603" /> </a> </div> </article> </li> </ul> </div> </exceed-filter-content> </div> </div> </div> </section> <div class="dialog dialog--award" id="award-dialog" role="dialog" aria-hidden="true"> <div class="dialog__content award dialog__content--removedefaults" role="document"></div> </div> <div class="dialog dialog--publiclogin" id="public-login-dialog" role="dialog" aria-hidden="true"> <div class="dialog__content publiclogin " role="document"></div> </div> <exceed-modal-helper aria-live="polite"></exceed-modal-helper> </main> <script src="/assets/student/application-e9e18645acf73307e6a60fa5e0a2909d46b88cf2314f6f40e294843f6751690e.js"></script> <footer id="page-footer" class="appfooter footer"> <div class="appfooter__content footer__content"> <div class="appfooter__item appfooter__customcontent footer__item footer__customcontent"> <a href="https://www.google.com/intl/en/policies/privacy/"> Google Privacy & Terms </a>, <a href="https://www.intellum.com/privacy-policy"> Intellum Privacy & Terms </a> </div> <div class="menulist menulist--footer appfooter__item appfooter__item--locale"> <div id="app-locale-label" class="menulist__title"> Locale: <span class="a11y-atonly">English selected</span> </div> <div class="menulist__wrapper"> <exceed-simple-select is-menu-only="true" trigger-content-selector="#app-locale-trigger span"> <button id="app-locale-trigger" class="menulist__trigger" type="button" aria-haspopup="listbox" aria-expanded="false" aria-labelledby="app-locale-label"><span class="menulist__optionname">English</span><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 12" aria-hidden="true" class="menulist__triggericon" focusable="false"> <g fill="currentColor" aria-hidden="true"> <path d="M6,8.9c-0.1,0-0.3,0-0.4-0.1L2.1,5.3c-0.2-0.2-0.2-0.5,0.2,-0.7l6.8,0 c0.2,0,0.5,0,0.7,0.1s0.2,0.5,0,0.7L6.4,8.8C6.3,8.9,6.1,8.9,6,8.9z"></path> </g> </svg> </button> <ul id="app-locale-menu" class="menulist__listbox menulist__listbox--footer menulist__listbox--top" role="listbox" aria-labelledby="app-locale-label"> <li id="app-locale-menu-option-id" class="menulist__option" role="option" data-href="/student/catalog/list?locale=id" aria-selected="false" tabindex="-1" > <span class="menulist__optionname">Bahasa Indonesia</span> </li> <li id="app-locale-menu-option-en" class="menulist__option" role="option" data-href="/student/catalog/list?locale=en" aria-selected="true" tabindex="-1" > <span class="menulist__optionname">English</span> </li> <li id="app-locale-menu-option-es-419" class="menulist__option" role="option" data-href="/student/catalog/list?locale=es-419" aria-selected="false" tabindex="-1" > <span class="menulist__optionname">Español (Latinoamérica)</span> </li> <li id="app-locale-menu-option-pt-BR" class="menulist__option" role="option" data-href="/student/catalog/list?locale=pt-BR" aria-selected="false" tabindex="-1" > <span class="menulist__optionname">Português</span> </li> <li id="app-locale-menu-option-vi" class="menulist__option" role="option" data-href="/student/catalog/list?locale=vi" aria-selected="false" tabindex="-1" > <span class="menulist__optionname">Tiếng Việt</span> </li> <li id="app-locale-menu-option-tr" class="menulist__option" role="option" data-href="/student/catalog/list?locale=tr" aria-selected="false" tabindex="-1" > <span class="menulist__optionname">Türkçe</span> </li> <li id="app-locale-menu-option-ru" class="menulist__option" role="option" data-href="/student/catalog/list?locale=ru" aria-selected="false" tabindex="-1" > <span class="menulist__optionname">русский</span> </li> <li id="app-locale-menu-option-ja" class="menulist__option" role="option" data-href="/student/catalog/list?locale=ja" aria-selected="false" tabindex="-1" > <span class="menulist__optionname">日本語</span> </li> <li id="app-locale-menu-option-zh-CN" class="menulist__option" role="option" data-href="/student/catalog/list?locale=zh-CN" aria-selected="false" tabindex="-1" > <span class="menulist__optionname">简体中文</span> </li> <li id="app-locale-menu-option-zh-TW" class="menulist__option" role="option" data-href="/student/catalog/list?locale=zh-TW" aria-selected="false" tabindex="-1" > <span class="menulist__optionname">繁體中文 (台灣)</span> </li> <li id="app-locale-menu-option-ko" class="menulist__option" role="option" data-href="/student/catalog/list?locale=ko" aria-selected="false" tabindex="-1" > <span class="menulist__optionname">한국어</span> </li> </ul> </exceed-simple-select> </div> </div> <p class="appfooter__item footer__item"> <a target="_blank" rel="noopener noreferrer" class="appfooter__link appfooter__link--poweredby" href="https://www.intellum.com/platform/powered-by-intellum/?utm_source=Google Play Academy&utm_medium=referral&utm_campaign=powered-by"> Powered by: <span class="appfooter__logo footer__logo"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 75 21" title="Intellum"> <g fill="currentColor"> <path class="st0" d="M8.8 13.9H7V7.1h1.8v6.8zM11.9 7.1h1.8l3.2 4.2V7.1h1.8v6.8H17l-3.2-4.2v4.2H12V7.1zM25 13.9h-1.8V8.6h-1.5V7.1h4.7v1.5H25v5.3zM31.6 8.6v1.1h2v1.5h-2v1.2h2.1v1.5h-3.9V7.1h3.9v1.5h-2.1zM39.3 12.4h2.1v1.5h-3.9V7.1h1.8v5.3zM46.5 12.4h2.1v1.5h-3.9V7.1h1.8v5.3zM57.1 7.1v3.8c0 .9 0 1.7-.7 2.4-.6.6-1.5.8-2.3.8-.8 0-1.7-.2-2.3-.8-.7-.7-.7-1.5-.7-2.4V7.1h1.8v3.6c0 .9.1 1.9 1.2 1.9 1.1 0 1.2-1 1.2-1.9V7.1h1.8zM60.6 7.1h1.7l1.4 3.6 1.5-3.6H67l1 6.8h-1.8l-.4-3.9-1.6 3.9h-.7L61.8 10l-.6 3.9h-1.8l1.2-6.8z"/> <g> <path d="M70.4 1.5h3.2v3.2L75 6.1v-6h-6zM73.6 8.6v10.9H1.4v-18h65.1L65.1.1H0v20.8h75V10z"/> </g> </g> </svg> </span> </a> </p> </div> </footer> <script> if( window.dataLayer) { i = dataLayer.findIndex(object => "user_id" in object) if ( i != undefined) { window.dataLayer[i] = {'user_logged_in': dataLayer[i].user_id ? true : false } } } function addToDataLayer(dataLayerObject = {}) { if (dataLayerObject !== undefined) { window.dataLayer.push(dataLayerObject); } } // Adds event to dataLayer when the Terms of Service are accepted jQuery('#new_terms_of_service_acceptance input[type="submit"]').click(function() { if ($('#terms_accepted').is(":checked")) { var tosDataLayerObject = { 'event': 'signupEvent', 'eventCategory': 'signup steps', 'eventAction': 'Accept terms', 'eventLabel': 'Step 1: Accept Terms' } addToDataLayer(tosDataLayerObject); } }); // Adds event to dataLayer when a country is selected and submitted on the country widget if ($('body').data()["action"] == "select_country" && $('body').data()["controller"] == "play") { jQuery(".widgetrow--actions .button").click(function() { if ($('#user_country').val() != "") { var countryDataLayerObject = { 'event': 'signupEvent', 'eventCategory': 'signup steps', 'eventAction': 'Complete Signup', 'eventLabel': 'Step 2 : Select Country' } addToDataLayer(countryDataLayerObject); } }); } </script> <script src="/assets/jstz.min-fcb43ceef2681fdde16ae58668f93e72a24aa8399bc3838acf51ccabb3f3e24c.js"></script> <script type="text/javascript"> var tz = jstz.determine(); document.cookie = "jstztimezone=" + tz.name(); </script> <script src="/vite/assets/components-c26d3595.js" crossorigin="anonymous" type="module"></script><link rel="modulepreload" href="/vite/assets/exceed-searchable-select-710be208.js" as="script" crossorigin="anonymous"> <link rel="modulepreload" href="/vite/assets/index-4b84654f.js" as="script" crossorigin="anonymous"> <link rel="modulepreload" href="/vite/assets/initMarkdownEditor-711d5529.js" as="script" crossorigin="anonymous"> <link rel="modulepreload" href="/vite/assets/index-62a7a937.js" as="script" crossorigin="anonymous"> <link rel="modulepreload" href="/vite/assets/centrifugo-dd29121e.js" as="script" crossorigin="anonymous"> <link rel="modulepreload" href="/vite/assets/index-fb7c5e9b.js" as="script" crossorigin="anonymous"> <link rel="modulepreload" href="/vite/assets/_commonjsHelpers-de833af9.js" as="script" crossorigin="anonymous"> <link rel="modulepreload" href="/vite/assets/jsx-runtime-38cf41f1.js" as="script" crossorigin="anonymous"> <link rel="modulepreload" href="/vite/assets/index-d7bd9d42.js" as="script" crossorigin="anonymous"> <link rel="modulepreload" href="/vite/assets/index-42c33c00.js" as="script" crossorigin="anonymous"> </body></html>