Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix part of #5344, Fix Part of #5422 and Fix Part of #5012: Implement Classroom List Screen with Jetpack Compose #5437

Merged
merged 187 commits into from
Jun 30, 2024

Conversation

theMr17
Copy link
Collaborator

@theMr17 theMr17 commented Jun 21, 2024

Explanation

Fixes part of #5344
Fixes part of #5422
Fixes part of #5012

This PR introduces the Classroom List Screen, which will replace the existing Home Screen. The new screen features a classroom carousel that remains sticky when the screen is scrolled. Various approaches were considered for implementing the sticky header, as detailed in Decision 3: How to implement the sticky classroom carousel?. Ultimately, it was decided to use the stickyHeader component of Jetpack Compose.

  • Introduce Jetpack Compose - Sets the groundwork for migrating the codebase to Jetpack Compose. The Classroom List Screen uses a ComposeView to host the composable components. Appropriate tests have been set up to verify the functionality.
  • Migrate away from onActivityResult - Deprecates the use of onActivityResult and transitions to using ActivityResultContracts for handling activity results.
  • Initiate Deprecation of Android KitKat - The selected versions of Jetpack Compose dependencies require the minSdkVersion to be atleast 21. This PR initiates the process of deprecating support for Android 19 (KitKat).
ScreenRecording.mp4

Screenshots

Phone Light Mode

Potrait Landscape
image image
image image

Phone Dark Mode

Potrait Landscape
image image
image image

Tablet Light Mode

Potrait Landscape
image image
image

Tablet Dark Mode

Potrait Landscape
image image
image

Essential Checklist

  • The PR title and explanation each start with "Fix #bugnum: " (If this PR fixes part of an issue, prefix the title with "Fix part of #bugnum: ...".)
  • Any changes to scripts/assets files have their rationale included in the PR explanation.
  • The PR follows the style guide.
  • The PR does not contain any unnecessary code changes from Android Studio (reference).
  • The PR is made from a branch that's not called "develop" and is up-to-date with "develop".
  • The PR is assigned to the appropriate reviewers (reference).

For UI-specific PRs only

If your PR includes UI-related changes, then:

  • Add screenshots for portrait/landscape for both a tablet & phone of the before & after UI changes
  • For the screenshots above, include both English and pseudo-localized (RTL) screenshots (see RTL guide)
  • Add a video showing the full UX flow with a screen reader enabled (see accessibility guide)
  • For PRs introducing new UI elements or color changes, both light and dark mode screenshots must be included
  • Add a screenshot demonstrating that you ran affected Espresso tests locally & that they're passing

theMr17 added 30 commits May 30, 2024 08:39
… classroom.

IDs of Science & Maths classrooms is interchanged to make the relative ordering of the topics same as previous. This is required by several UI tests to pass.
@theMr17 theMr17 assigned adhiamboperes and unassigned theMr17 Jun 28, 2024
@adhiamboperes
Copy link
Collaborator

Noticed bazel builds timing out so I have cancelled the workflow

@theMr17
Copy link
Collaborator Author

theMr17 commented Jun 28, 2024

Yep, thanks, I was going to do so. Also, have re-run the builds.

Copy link
Collaborator

@adhiamboperes adhiamboperes left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @theMr17. This Looks Good to me.

@adhiamboperes
Copy link
Collaborator

@theMr17 Please reasign once the PR description is complete.

Copy link

oppiabot bot commented Jun 28, 2024

Assigning @BenHenning for code owner reviews. Thanks!

@theMr17 theMr17 changed the title Fix part of #5344: Implement Classroom List Screen with Jetpack Compose Fix part of #5344, #5422 and #5012: Implement Classroom List Screen with Jetpack Compose Jun 28, 2024
@theMr17
Copy link
Collaborator Author

theMr17 commented Jun 28, 2024

@adhiamboperes I've updated the PR title and description. I hope I haven't missed anything.

@adhiamboperes
Copy link
Collaborator

@seanlip, this PR is ready to be merged. I am updating with develop and enabling automerge. PTAL for owners.

@adhiamboperes adhiamboperes changed the title Fix part of #5344, #5422 and #5012: Implement Classroom List Screen with Jetpack Compose Fix part of #5344, Fix Part of #5422 and Fix Part of #5012: Implement Classroom List Screen with Jetpack Compose Jun 28, 2024
@adhiamboperes
Copy link
Collaborator

Closing and reopening to trigger CI

@adhiamboperes adhiamboperes reopened this Jun 29, 2024
@adhiamboperes adhiamboperes enabled auto-merge (squash) June 29, 2024 09:25
Copy link
Member

@seanlip seanlip left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM for owners.

@adhiamboperes adhiamboperes merged commit 103f5a8 into develop Jun 30, 2024
44 checks passed
@adhiamboperes adhiamboperes deleted the multiple-classrooms-ui-support branch June 30, 2024 03:02
Copy link

APK & AAB differences analysis

Note that this is a summarized snapshot. See the CI artifacts for detailed differences.

Dev

Expand to see flavor specifics

Universal APK

APK file size: 16 MiB (old), 18 MiB (new), 2618 KiB (Added)

APK download size (estimated): 14 MiB (old), 17 MiB (new), 2614 KiB (Added)

Method count: 227007 (old), 257693 (new), 30686 (Added)

Features: 2 (old), 2 (new), 0 (No change)

Permissions: 6 (old), 6 (new), 0 (No change)

Resources: 6550 (old), 6646 (new), 96 (Added)

  • Anim: 49 (old), 43 (new), 6 (Removed):
    • anim/fragment_close_enter (removed)
    • anim/fragment_close_exit (removed)
    • anim/fragment_fade_enter (removed)
    • anim/fragment_fade_exit (removed)
    • anim/fragment_open_enter (removed)
    • And 1 other
  • Animator: 20 (old), 26 (new), 6 (Added):
    • animator/fragment_close_enter (added)
    • animator/fragment_close_exit (added)
    • animator/fragment_fade_enter (added)
    • animator/fragment_fade_exit (added)
    • animator/fragment_open_enter (added)
    • And 1 other
  • Array: 15 (old), 15 (new), 0 (No change)
  • Attr: 915 (old), 922 (new), 7 (Added):
    • attr/actionModeCloseContentDescription (added)
    • attr/actionModeTheme (added)
    • attr/fontProviderSystemFontFamily (added)
    • attr/lStar (added)
    • attr/nestedScrollViewStyle (added)
    • And 2 others
  • Bool: 10 (old), 9 (new), 1 (Removed):
    • bool/abc_allow_stacked_button_bar (removed)
  • Color: 911 (old), 926 (new), 15 (Added):
    • color/color_def_greenish_black (added)
    • color/color_def_greenish_white (added)
    • color/color_palette_classroom_card_color (added)
    • color/color_palette_classroom_promoted_list_classroom_label_color (added)
    • color/color_palette_classroom_shared_text_color (added)
    • And 10 others
  • Dimen: 994 (old), 1028 (new), 34 (Added):
    • dimen/abc_star_big (added)
    • dimen/abc_star_medium (added)
    • dimen/abc_star_small (added)
    • dimen/all_topics_text_size (added)
    • dimen/classrooms_card_elevation (added)
    • And 29 others
  • Drawable: 373 (old), 369 (new), 4 (Removed):
    • drawable/abc_ic_star_black_16dp (removed)
    • drawable/abc_ic_star_black_36dp (removed)
    • drawable/abc_ic_star_black_48dp (removed)
    • drawable/abc_ic_star_half_black_16dp (removed)
    • drawable/abc_ic_star_half_black_36dp (removed)
    • And 15 others
  • Id: 1206 (old), 1229 (new), 23 (Added):
    • id/androidx_compose_ui_view_composition_context (added)
    • id/classroom_list_activity_drawer_layout (added)
    • id/classroom_list_activity_fragment_navigation_drawer (added)
    • id/classroom_list_activity_toolbar (added)
    • id/classroom_list_fragment_placeholder (added)
    • And 18 others
  • Integer: 37 (old), 37 (new), 0 (No change)
  • Interpolator: 11 (old), 11 (new), 0 (No change)
  • Layout: 368 (old), 370 (new), 2 (Added):
    • layout/classroom_list_activity (added)
    • layout/classroom_list_fragment (added)
  • Menu: 1 (old), 3 (new), 2 (Added):
    • menu/example_menu (added)
    • menu/example_menu2 (added)
  • Mipmap: 1 (old), 1 (new), 0 (No change)
  • Plurals: 10 (old), 10 (new), 0 (No change)
  • Raw: 2 (old), 2 (new), 0 (No change)
  • String: 805 (old), 822 (new), 17 (Added):
    • string/androidx_startup (added)
    • string/classroom_list_activity_title (added)
    • string/classrooms_list_activity_section_header (added)
    • string/close_drawer (added)
    • string/close_sheet (added)
    • And 12 others
  • Style: 816 (old), 817 (new), 1 (Added):
    • style/DialogWindowTheme (added)
  • Xml: 6 (old), 6 (new), 0 (No change)

Lesson assets: 111 (old), 111 (new), 0 (No change)

AAB differences

Expand to see AAB specifics

Supported configurations:

  • hdpi (same)
  • ldpi (same)
  • mdpi (same)
  • tvdpi (same)
  • xhdpi (same)
  • xxhdpi (same)
  • xxxhdpi (same)

Base APK

APK file size: 16 MiB (old), 18 MiB (new), 2673 KiB (Added)
APK download size (estimated): 14 MiB (old), 17 MiB (new), 2650 KiB (Added)
Method count: 227007 (old), 257693 (new), 30686 (Added)
Resources: 6486 (old), 6596 (new), 110 (Added)

  • Anim: 49 (old), 43 (new), 6 (Removed)
  • Animator: 20 (old), 26 (new), 6 (Added)
  • Attr: 915 (old), 922 (new), 7 (Added)
  • Bool: 9 (old), 8 (new), 1 (Removed)
  • Color: 911 (old), 926 (new), 15 (Added)
  • Dimen: 990 (old), 1024 (new), 34 (Added)
  • Drawable: 314 (old), 324 (new), 10 (Added)
  • Id: 1206 (old), 1229 (new), 23 (Added)
  • Layout: 368 (old), 370 (new), 2 (Added)
  • Menu: 1 (old), 3 (new), 2 (Added)
  • String: 805 (old), 822 (new), 17 (Added)
  • Style: 816 (old), 817 (new), 1 (Added)

Configuration hdpi

APK file size: 59 KiB (old), 49 KiB (new), 9988 bytes (Removed)
APK download size (estimated): 23 KiB (old), 18 KiB (new), 5637 bytes (Removed)
Resources: 68 (old), 54 (new), 14 (Removed)

  • Drawable: 59 (old), 45 (new), 14 (Removed)

Configuration ldpi

APK file size: 56 KiB (old), 48 KiB (new), 8316 bytes (Removed)
APK download size (estimated): 18 KiB (old), 14 KiB (new), 4123 bytes (Removed)
Resources: 67 (old), 53 (new), 14 (Removed)

  • Drawable: 59 (old), 45 (new), 14 (Removed)

Configuration mdpi

APK file size: 53 KiB (old), 45 KiB (new), 8384 bytes (Removed)
APK download size (estimated): 18 KiB (old), 14 KiB (new), 4198 bytes (Removed)
Resources: 67 (old), 53 (new), 14 (Removed)

  • Drawable: 59 (old), 45 (new), 14 (Removed)

Configuration tvdpi

APK file size: 102 KiB (old), 85 KiB (new), 17 KiB (Removed)
APK download size (estimated): 38 KiB (old), 29 KiB (new), 9505 bytes (Removed)
Resources: 68 (old), 54 (new), 14 (Removed)

  • Drawable: 59 (old), 45 (new), 14 (Removed)

Configuration xhdpi

APK file size: 67 KiB (old), 56 KiB (new), 10 KiB (Removed)
APK download size (estimated): 28 KiB (old), 21 KiB (new), 7025 bytes (Removed)
Resources: 68 (old), 54 (new), 14 (Removed)

  • Drawable: 59 (old), 45 (new), 14 (Removed)

Configuration xxhdpi

APK file size: 76 KiB (old), 62 KiB (new), 13 KiB (Removed)
APK download size (estimated): 38 KiB (old), 29 KiB (new), 8716 bytes (Removed)
Resources: 68 (old), 54 (new), 14 (Removed)

  • Drawable: 59 (old), 45 (new), 14 (Removed)

Configuration xxxhdpi

APK file size: 79 KiB (old), 63 KiB (new), 15 KiB (Removed)
APK download size (estimated): 39 KiB (old), 28 KiB (new), 10 KiB (Removed)
Resources: 68 (old), 54 (new), 14 (Removed)

  • Drawable: 59 (old), 45 (new), 14 (Removed)

Alpha

Expand to see flavor specifics

Universal APK

APK file size: 10 MiB (old), 10 MiB (new), 925 KiB (Added)

APK download size (estimated): 9184 KiB (old), 9 MiB (new), 918 KiB (Added)

Method count: 101341 (old), 114371 (new), 13030 (Added)

Features: 2 (old), 2 (new), 0 (No change)

Permissions: 6 (old), 6 (new), 0 (No change)

Resources: 5504 (old), 5613 (new), 109 (Added)

  • Anim: 39 (old), 33 (new), 6 (Removed):
    • anim/fragment_close_enter (removed)
    • anim/fragment_close_exit (removed)
    • anim/fragment_fade_enter (removed)
    • anim/fragment_fade_exit (removed)
    • anim/fragment_open_enter (removed)
    • And 1 other
  • Animator: 18 (old), 24 (new), 6 (Added):
    • animator/fragment_close_enter (added)
    • animator/fragment_close_exit (added)
    • animator/fragment_fade_enter (added)
    • animator/fragment_fade_exit (added)
    • animator/fragment_open_enter (added)
    • And 1 other
  • Array: 14 (old), 14 (new), 0 (No change)
  • Attr: 879 (old), 888 (new), 9 (Added):
    • attr/actionModeCloseContentDescription (added)
    • attr/actionModeTheme (added)
    • attr/clockIcon (added)
    • attr/fontProviderSystemFontFamily (added)
    • attr/keyboardIcon (added)
    • And 4 others
  • Bool: 8 (old), 8 (new), 0 (No change)
  • Color: 767 (old), 779 (new), 12 (Added):
    • color/color_def_green (added)
    • color/color_def_greenish_black (added)
    • color/color_def_greenish_white (added)
    • color/color_palette_classroom_card_color (added)
    • color/color_palette_classroom_promoted_list_classroom_label_color (added)
    • And 7 others
  • Dimen: 722 (old), 759 (new), 37 (Added):
    • dimen/abc_star_big (added)
    • dimen/abc_star_medium (added)
    • dimen/abc_star_small (added)
    • dimen/all_topics_text_size (added)
    • dimen/classrooms_card_elevation (added)
    • And 32 others
  • Drawable: 333 (old), 331 (new), 2 (Removed):
    • drawable/abc_ic_star_black_16dp (removed)
    • drawable/abc_ic_star_black_36dp (removed)
    • drawable/abc_ic_star_black_48dp (removed)
    • drawable/abc_ic_star_half_black_16dp (removed)
    • drawable/abc_ic_star_half_black_36dp (removed)
    • And 17 others
  • Id: 1148 (old), 1175 (new), 27 (Added):
    • id/androidx_compose_ui_view_composition_context (added)
    • id/classroom_list_activity_drawer_layout (added)
    • id/classroom_list_activity_fragment_navigation_drawer (added)
    • id/classroom_list_activity_toolbar (added)
    • id/classroom_list_fragment_placeholder (added)
    • And 22 others
  • Integer: 32 (old), 32 (new), 0 (No change)
  • Interpolator: 11 (old), 11 (new), 0 (No change)
  • Layout: 327 (old), 333 (new), 6 (Added):
    • layout/classroom_list_activity (added)
    • layout/classroom_list_fragment (added)
    • layout/material_chip_input_combo (added)
    • layout/material_textinput_timepicker (added)
    • layout/material_timepicker_dialog (added)
    • And 1 other
  • Menu: 1 (old), 1 (new), 0 (No change)
  • Mipmap: 1 (old), 1 (new), 0 (No change)
  • Plurals: 10 (old), 10 (new), 0 (No change)
  • String: 736 (old), 755 (new), 19 (Added):
    • string/classroom_list_activity_title (added)
    • string/classrooms_list_activity_section_header (added)
    • string/in_progress (added)
    • string/indeterminate (added)
    • string/material_hour_selection (added)
    • And 14 others
  • Style: 457 (old), 458 (new), 1 (Added):
    • style/Widget.MaterialComponents.TimePicker (added)
  • Xml: 1 (old), 1 (new), 0 (No change)

Lesson assets: 111 (old), 111 (new), 0 (No change)

AAB differences

Expand to see AAB specifics

Supported configurations:

  • hdpi (same)
  • ldpi (same)
  • mdpi (same)
  • tvdpi (same)
  • xhdpi (same)
  • xxhdpi (same)
  • xxxhdpi (same)

Base APK

APK file size: 9 MiB (old), 10 MiB (new), 981 KiB (Added)
APK download size (estimated): 9064 KiB (old), 9 MiB (new), 952 KiB (Added)
Method count: 101341 (old), 114371 (new), 13030 (Added)
Resources: 5447 (old), 5570 (new), 123 (Added)

  • Anim: 39 (old), 33 (new), 6 (Removed)
  • Animator: 18 (old), 24 (new), 6 (Added)
  • Attr: 879 (old), 888 (new), 9 (Added)
  • Color: 767 (old), 779 (new), 12 (Added)
  • Dimen: 720 (old), 757 (new), 37 (Added)
  • Drawable: 279 (old), 291 (new), 12 (Added)
  • Id: 1148 (old), 1175 (new), 27 (Added)
  • Layout: 327 (old), 333 (new), 6 (Added)
  • String: 736 (old), 755 (new), 19 (Added)
  • Style: 457 (old), 458 (new), 1 (Added)

Configuration hdpi

APK file size: 52 KiB (old), 42 KiB (new), 9 KiB (Removed)
APK download size (estimated): 22 KiB (old), 17 KiB (new), 5721 bytes (Removed)
Resources: 61 (old), 47 (new), 14 (Removed)

  • Drawable: 54 (old), 40 (new), 14 (Removed)

Configuration ldpi

APK file size: 52 KiB (old), 44 KiB (new), 8364 bytes (Removed)
APK download size (estimated): 17 KiB (old), 13 KiB (new), 4186 bytes (Removed)
Resources: 60 (old), 46 (new), 14 (Removed)

  • Drawable: 54 (old), 40 (new), 14 (Removed)

Configuration mdpi

APK file size: 46 KiB (old), 38 KiB (new), 8500 bytes (Removed)
APK download size (estimated): 17 KiB (old), 13 KiB (new), 4233 bytes (Removed)
Resources: 60 (old), 46 (new), 14 (Removed)

  • Drawable: 54 (old), 40 (new), 14 (Removed)

Configuration tvdpi

APK file size: 90 KiB (old), 72 KiB (new), 17 KiB (Removed)
APK download size (estimated): 37 KiB (old), 27 KiB (new), 9608 bytes (Removed)
Resources: 61 (old), 47 (new), 14 (Removed)

  • Drawable: 54 (old), 40 (new), 14 (Removed)

Configuration xhdpi

APK file size: 60 KiB (old), 49 KiB (new), 10 KiB (Removed)
APK download size (estimated): 27 KiB (old), 20 KiB (new), 7049 bytes (Removed)
Resources: 61 (old), 47 (new), 14 (Removed)

  • Drawable: 54 (old), 40 (new), 14 (Removed)

Configuration xxhdpi

APK file size: 69 KiB (old), 55 KiB (new), 13 KiB (Removed)
APK download size (estimated): 37 KiB (old), 28 KiB (new), 8661 bytes (Removed)
Resources: 61 (old), 47 (new), 14 (Removed)

  • Drawable: 54 (old), 40 (new), 14 (Removed)

Configuration xxxhdpi

APK file size: 71 KiB (old), 55 KiB (new), 16 KiB (Removed)
APK download size (estimated): 38 KiB (old), 27 KiB (new), 10 KiB (Removed)
Resources: 61 (old), 47 (new), 14 (Removed)

  • Drawable: 54 (old), 40 (new), 14 (Removed)

Beta

Expand to see flavor specifics

Universal APK

APK file size: 10 MiB (old), 10 MiB (new), 923 KiB (Added)

APK download size (estimated): 9169 KiB (old), 9 MiB (new), 915 KiB (Added)

Method count: 101341 (old), 114377 (new), 13036 (Added)

Features: 2 (old), 2 (new), 0 (No change)

Permissions: 6 (old), 6 (new), 0 (No change)

Resources: 5504 (old), 5613 (new), 109 (Added)

  • Anim: 39 (old), 33 (new), 6 (Removed):
    • anim/fragment_close_enter (removed)
    • anim/fragment_close_exit (removed)
    • anim/fragment_fade_enter (removed)
    • anim/fragment_fade_exit (removed)
    • anim/fragment_open_enter (removed)
    • And 1 other
  • Animator: 18 (old), 24 (new), 6 (Added):
    • animator/fragment_close_enter (added)
    • animator/fragment_close_exit (added)
    • animator/fragment_fade_enter (added)
    • animator/fragment_fade_exit (added)
    • animator/fragment_open_enter (added)
    • And 1 other
  • Array: 14 (old), 14 (new), 0 (No change)
  • Attr: 879 (old), 888 (new), 9 (Added):
    • attr/actionModeCloseContentDescription (added)
    • attr/actionModeTheme (added)
    • attr/clockIcon (added)
    • attr/fontProviderSystemFontFamily (added)
    • attr/keyboardIcon (added)
    • And 4 others
  • Bool: 8 (old), 8 (new), 0 (No change)
  • Color: 767 (old), 779 (new), 12 (Added):
    • color/color_def_green (added)
    • color/color_def_greenish_black (added)
    • color/color_def_greenish_white (added)
    • color/color_palette_classroom_card_color (added)
    • color/color_palette_classroom_promoted_list_classroom_label_color (added)
    • And 7 others
  • Dimen: 722 (old), 759 (new), 37 (Added):
    • dimen/abc_star_big (added)
    • dimen/abc_star_medium (added)
    • dimen/abc_star_small (added)
    • dimen/all_topics_text_size (added)
    • dimen/classrooms_card_elevation (added)
    • And 32 others
  • Drawable: 333 (old), 331 (new), 2 (Removed):
    • drawable/abc_ic_star_black_16dp (removed)
    • drawable/abc_ic_star_black_36dp (removed)
    • drawable/abc_ic_star_black_48dp (removed)
    • drawable/abc_ic_star_half_black_16dp (removed)
    • drawable/abc_ic_star_half_black_36dp (removed)
    • And 17 others
  • Id: 1148 (old), 1175 (new), 27 (Added):
    • id/androidx_compose_ui_view_composition_context (added)
    • id/classroom_list_activity_drawer_layout (added)
    • id/classroom_list_activity_fragment_navigation_drawer (added)
    • id/classroom_list_activity_toolbar (added)
    • id/classroom_list_fragment_placeholder (added)
    • And 22 others
  • Integer: 32 (old), 32 (new), 0 (No change)
  • Interpolator: 11 (old), 11 (new), 0 (No change)
  • Layout: 327 (old), 333 (new), 6 (Added):
    • layout/classroom_list_activity (added)
    • layout/classroom_list_fragment (added)
    • layout/material_chip_input_combo (added)
    • layout/material_textinput_timepicker (added)
    • layout/material_timepicker_dialog (added)
    • And 1 other
  • Menu: 1 (old), 1 (new), 0 (No change)
  • Mipmap: 1 (old), 1 (new), 0 (No change)
  • Plurals: 10 (old), 10 (new), 0 (No change)
  • String: 736 (old), 755 (new), 19 (Added):
    • string/classroom_list_activity_title (added)
    • string/classrooms_list_activity_section_header (added)
    • string/in_progress (added)
    • string/indeterminate (added)
    • string/material_hour_selection (added)
    • And 14 others
  • Style: 457 (old), 458 (new), 1 (Added):
    • style/Widget.MaterialComponents.TimePicker (added)
  • Xml: 1 (old), 1 (new), 0 (No change)

Lesson assets: 111 (old), 111 (new), 0 (No change)

AAB differences

Expand to see AAB specifics

Supported configurations:

  • hdpi (same)
  • ldpi (same)
  • mdpi (same)
  • tvdpi (same)
  • xhdpi (same)
  • xxhdpi (same)
  • xxxhdpi (same)

Base APK

APK file size: 9 MiB (old), 10 MiB (new), 979 KiB (Added)
APK download size (estimated): 9053 KiB (old), 9 MiB (new), 950 KiB (Added)
Method count: 101341 (old), 114377 (new), 13036 (Added)
Resources: 5447 (old), 5570 (new), 123 (Added)

  • Anim: 39 (old), 33 (new), 6 (Removed)
  • Animator: 18 (old), 24 (new), 6 (Added)
  • Attr: 879 (old), 888 (new), 9 (Added)
  • Color: 767 (old), 779 (new), 12 (Added)
  • Dimen: 720 (old), 757 (new), 37 (Added)
  • Drawable: 279 (old), 291 (new), 12 (Added)
  • Id: 1148 (old), 1175 (new), 27 (Added)
  • Layout: 327 (old), 333 (new), 6 (Added)
  • String: 736 (old), 755 (new), 19 (Added)
  • Style: 457 (old), 458 (new), 1 (Added)

Configuration hdpi

APK file size: 52 KiB (old), 42 KiB (new), 9 KiB (Removed)
APK download size (estimated): 22 KiB (old), 17 KiB (new), 5719 bytes (Removed)
Resources: 61 (old), 47 (new), 14 (Removed)

  • Drawable: 54 (old), 40 (new), 14 (Removed)

Configuration ldpi

APK file size: 52 KiB (old), 44 KiB (new), 8364 bytes (Removed)
APK download size (estimated): 17 KiB (old), 13 KiB (new), 4186 bytes (Removed)
Resources: 60 (old), 46 (new), 14 (Removed)

  • Drawable: 54 (old), 40 (new), 14 (Removed)

Configuration mdpi

APK file size: 46 KiB (old), 38 KiB (new), 8500 bytes (Removed)
APK download size (estimated): 17 KiB (old), 13 KiB (new), 4234 bytes (Removed)
Resources: 60 (old), 46 (new), 14 (Removed)

  • Drawable: 54 (old), 40 (new), 14 (Removed)

Configuration tvdpi

APK file size: 90 KiB (old), 72 KiB (new), 17 KiB (Removed)
APK download size (estimated): 37 KiB (old), 27 KiB (new), 9607 bytes (Removed)
Resources: 61 (old), 47 (new), 14 (Removed)

  • Drawable: 54 (old), 40 (new), 14 (Removed)

Configuration xhdpi

APK file size: 60 KiB (old), 49 KiB (new), 10 KiB (Removed)
APK download size (estimated): 27 KiB (old), 20 KiB (new), 7048 bytes (Removed)
Resources: 61 (old), 47 (new), 14 (Removed)

  • Drawable: 54 (old), 40 (new), 14 (Removed)

Configuration xxhdpi

APK file size: 69 KiB (old), 55 KiB (new), 13 KiB (Removed)
APK download size (estimated): 37 KiB (old), 28 KiB (new), 8661 bytes (Removed)
Resources: 61 (old), 47 (new), 14 (Removed)

  • Drawable: 54 (old), 40 (new), 14 (Removed)

Configuration xxxhdpi

APK file size: 71 KiB (old), 55 KiB (new), 16 KiB (Removed)
APK download size (estimated): 38 KiB (old), 27 KiB (new), 10 KiB (Removed)
Resources: 61 (old), 47 (new), 14 (Removed)

  • Drawable: 54 (old), 40 (new), 14 (Removed)

Ga

Expand to see flavor specifics

Universal APK

APK file size: 10 MiB (old), 10 MiB (new), 923 KiB (Added)

APK download size (estimated): 9169 KiB (old), 9 MiB (new), 917 KiB (Added)

Method count: 101341 (old), 114377 (new), 13036 (Added)

Features: 2 (old), 2 (new), 0 (No change)

Permissions: 6 (old), 6 (new), 0 (No change)

Resources: 5504 (old), 5613 (new), 109 (Added)

  • Anim: 39 (old), 33 (new), 6 (Removed):
    • anim/fragment_close_enter (removed)
    • anim/fragment_close_exit (removed)
    • anim/fragment_fade_enter (removed)
    • anim/fragment_fade_exit (removed)
    • anim/fragment_open_enter (removed)
    • And 1 other
  • Animator: 18 (old), 24 (new), 6 (Added):
    • animator/fragment_close_enter (added)
    • animator/fragment_close_exit (added)
    • animator/fragment_fade_enter (added)
    • animator/fragment_fade_exit (added)
    • animator/fragment_open_enter (added)
    • And 1 other
  • Array: 14 (old), 14 (new), 0 (No change)
  • Attr: 879 (old), 888 (new), 9 (Added):
    • attr/actionModeCloseContentDescription (added)
    • attr/actionModeTheme (added)
    • attr/clockIcon (added)
    • attr/fontProviderSystemFontFamily (added)
    • attr/keyboardIcon (added)
    • And 4 others
  • Bool: 8 (old), 8 (new), 0 (No change)
  • Color: 767 (old), 779 (new), 12 (Added):
    • color/color_def_green (added)
    • color/color_def_greenish_black (added)
    • color/color_def_greenish_white (added)
    • color/color_palette_classroom_card_color (added)
    • color/color_palette_classroom_promoted_list_classroom_label_color (added)
    • And 7 others
  • Dimen: 722 (old), 759 (new), 37 (Added):
    • dimen/abc_star_big (added)
    • dimen/abc_star_medium (added)
    • dimen/abc_star_small (added)
    • dimen/all_topics_text_size (added)
    • dimen/classrooms_card_elevation (added)
    • And 32 others
  • Drawable: 333 (old), 331 (new), 2 (Removed):
    • drawable/abc_ic_star_black_16dp (removed)
    • drawable/abc_ic_star_black_36dp (removed)
    • drawable/abc_ic_star_black_48dp (removed)
    • drawable/abc_ic_star_half_black_16dp (removed)
    • drawable/abc_ic_star_half_black_36dp (removed)
    • And 17 others
  • Id: 1148 (old), 1175 (new), 27 (Added):
    • id/androidx_compose_ui_view_composition_context (added)
    • id/classroom_list_activity_drawer_layout (added)
    • id/classroom_list_activity_fragment_navigation_drawer (added)
    • id/classroom_list_activity_toolbar (added)
    • id/classroom_list_fragment_placeholder (added)
    • And 22 others
  • Integer: 32 (old), 32 (new), 0 (No change)
  • Interpolator: 11 (old), 11 (new), 0 (No change)
  • Layout: 327 (old), 333 (new), 6 (Added):
    • layout/classroom_list_activity (added)
    • layout/classroom_list_fragment (added)
    • layout/material_chip_input_combo (added)
    • layout/material_textinput_timepicker (added)
    • layout/material_timepicker_dialog (added)
    • And 1 other
  • Menu: 1 (old), 1 (new), 0 (No change)
  • Mipmap: 1 (old), 1 (new), 0 (No change)
  • Plurals: 10 (old), 10 (new), 0 (No change)
  • String: 736 (old), 755 (new), 19 (Added):
    • string/classroom_list_activity_title (added)
    • string/classrooms_list_activity_section_header (added)
    • string/in_progress (added)
    • string/indeterminate (added)
    • string/material_hour_selection (added)
    • And 14 others
  • Style: 457 (old), 458 (new), 1 (Added):
    • style/Widget.MaterialComponents.TimePicker (added)
  • Xml: 1 (old), 1 (new), 0 (No change)

Lesson assets: 111 (old), 111 (new), 0 (No change)

AAB differences

Expand to see AAB specifics

Supported configurations:

  • hdpi (same)
  • ldpi (same)
  • mdpi (same)
  • tvdpi (same)
  • xhdpi (same)
  • xxhdpi (same)
  • xxxhdpi (same)

Base APK

APK file size: 9 MiB (old), 10 MiB (new), 979 KiB (Added)
APK download size (estimated): 9053 KiB (old), 9 MiB (new), 950 KiB (Added)
Method count: 101341 (old), 114377 (new), 13036 (Added)
Resources: 5447 (old), 5570 (new), 123 (Added)

  • Anim: 39 (old), 33 (new), 6 (Removed)
  • Animator: 18 (old), 24 (new), 6 (Added)
  • Attr: 879 (old), 888 (new), 9 (Added)
  • Color: 767 (old), 779 (new), 12 (Added)
  • Dimen: 720 (old), 757 (new), 37 (Added)
  • Drawable: 279 (old), 291 (new), 12 (Added)
  • Id: 1148 (old), 1175 (new), 27 (Added)
  • Layout: 327 (old), 333 (new), 6 (Added)
  • String: 736 (old), 755 (new), 19 (Added)
  • Style: 457 (old), 458 (new), 1 (Added)

Configuration hdpi

APK file size: 52 KiB (old), 42 KiB (new), 9 KiB (Removed)
APK download size (estimated): 22 KiB (old), 17 KiB (new), 5720 bytes (Removed)
Resources: 61 (old), 47 (new), 14 (Removed)

  • Drawable: 54 (old), 40 (new), 14 (Removed)

Configuration ldpi

APK file size: 52 KiB (old), 44 KiB (new), 8364 bytes (Removed)
APK download size (estimated): 17 KiB (old), 13 KiB (new), 4187 bytes (Removed)
Resources: 60 (old), 46 (new), 14 (Removed)

  • Drawable: 54 (old), 40 (new), 14 (Removed)

Configuration mdpi

APK file size: 46 KiB (old), 38 KiB (new), 8500 bytes (Removed)
APK download size (estimated): 17 KiB (old), 13 KiB (new), 4233 bytes (Removed)
Resources: 60 (old), 46 (new), 14 (Removed)

  • Drawable: 54 (old), 40 (new), 14 (Removed)

Configuration tvdpi

APK file size: 90 KiB (old), 72 KiB (new), 17 KiB (Removed)
APK download size (estimated): 37 KiB (old), 27 KiB (new), 9607 bytes (Removed)
Resources: 61 (old), 47 (new), 14 (Removed)

  • Drawable: 54 (old), 40 (new), 14 (Removed)

Configuration xhdpi

APK file size: 60 KiB (old), 49 KiB (new), 10 KiB (Removed)
APK download size (estimated): 27 KiB (old), 20 KiB (new), 7048 bytes (Removed)
Resources: 61 (old), 47 (new), 14 (Removed)

  • Drawable: 54 (old), 40 (new), 14 (Removed)

Configuration xxhdpi

APK file size: 69 KiB (old), 55 KiB (new), 13 KiB (Removed)
APK download size (estimated): 37 KiB (old), 28 KiB (new), 8662 bytes (Removed)
Resources: 61 (old), 47 (new), 14 (Removed)

  • Drawable: 54 (old), 40 (new), 14 (Removed)

Configuration xxxhdpi

APK file size: 71 KiB (old), 55 KiB (new), 16 KiB (Removed)
APK download size (estimated): 38 KiB (old), 27 KiB (new), 10 KiB (Removed)
Resources: 61 (old), 47 (new), 14 (Removed)

  • Drawable: 54 (old), 40 (new), 14 (Removed)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants