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 #4072 and Fix Part of #4938: Revised profile chooser UI #5468

Open
wants to merge 411 commits into
base: develop
Choose a base branch
from

Conversation

adhiamboperes
Copy link
Collaborator

@adhiamboperes adhiamboperes commented Jul 25, 2024

Explanation

Fixes #4072.
The selected image uri created by com.miui.gallery app in Xiaomi devices has a different format from the android recommended uri, and is therefore not parsed correctly. Changing the name of the stored file, to be generated using a random UUID, fixes the issue. Please see #4072 (comment) for more information.

Fixes Part of #4938: Creates the new Profile chooser UI.
The portrait mode layout is a grid layout recylerview, while landscape mode utilizes a custom recyclerview to create a carousel. This design choice is kind of inconsistent, but more intuitive for users in landscape mode. ProfileChooserFragmentPresenter handles the data binding and UI interactions for both layouts.

Care has been taken to ensure the existing profile behaviour e.g. random color selection and 10 profiles limit have been retained.

Additionally, a new ParentScreen enum has been created for the onboarding IntroActivity to control when to show the step count. Per PRD, the step count should not show for additional learners.

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

Phone

Portrait Landscape
Screenshot_1738325657 Screenshot_1738515999
Screenshot_1738325657 Screenshot_1738515933Screenshot_1738516038
Screenshot_1733944060 Screenshot_1733943920

Tablet

Portrait Landscape
Screenshot_1733945299 Screenshot_1738516249
Screenshot_1733945372 Screenshot_1733945392

…le-domain-config

# Conflicts:
#	model/src/main/proto/oppia_logger.proto
#	testing/src/main/java/org/oppia/android/testing/logging/EventLogSubject.kt
#	utility/src/main/java/org/oppia/android/util/logging/EventBundleCreator.kt
…reen

# Conflicts:
#	app/src/sharedTest/java/org/oppia/android/app/onboarding/CreateProfileFragmentTest.kt
…le-domain-config

# Conflicts:
#	app/src/main/java/org/oppia/android/app/onboarding/IntroFragment.kt
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: 19 MiB (old), 19 MiB (new), 43 KiB (Added)

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

Method count: 260219 (old), 260523 (new), 304 (Added)

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

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

Resources: 6818 (old), 6868 (new), 50 (Added)

  • Anim: 43 (old), 43 (new), 0 (No change)
  • Animator: 26 (old), 26 (new), 0 (No change)
  • Array: 15 (old), 15 (new), 0 (No change)
  • Attr: 922 (old), 922 (new), 0 (No change)
  • Bool: 9 (old), 9 (new), 0 (No change)
  • Color: 967 (old), 975 (new), 8 (Added):
    • color/color_def_charcoal (added)
    • color/color_def_ivory (added)
    • color/color_palette_profile_selection_background_color (added)
    • color/color_palette_profile_selection_profile_icon_background_color (added)
    • color/component_color_profile_icon_stroke_color (added)
    • And 3 others
  • Dimen: 1048 (old), 1069 (new), 21 (Added):
    • dimen/profile_item_profile_icon_size (added)
    • dimen/profile_item_profile_picture_stroke_width (added)
    • dimen/profile_selection_activity_profile_icon_size (added)
    • dimen/profile_selection_fragment_add_button_margin_bottom (added)
    • dimen/profile_selection_fragment_add_profile_button_margin_end (added)
    • And 16 others
  • Drawable: 380 (old), 383 (new), 3 (Added):
    • drawable/ic_add (added)
    • drawable/ic_chevron_left (added)
    • drawable/ic_chevron_right (added)
  • Id: 1275 (old), 1286 (new), 11 (Added):
    • id/add_profile_button (added)
    • id/add_profile_prompt (added)
    • id/profile_avatar (added)
    • id/profile_item_container (added)
    • id/profile_list_scroll_left (added)
    • And 6 others
  • Integer: 37 (old), 37 (new), 0 (No change)
  • Interpolator: 11 (old), 11 (new), 0 (No change)
  • Layout: 380 (old), 382 (new), 2 (Added):
    • layout/profile_item (added)
    • layout/profile_selection_fragment (added)
  • Menu: 3 (old), 3 (new), 0 (No change)
  • 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: 852 (old), 857 (new), 5 (Added):
    • string/profile_selection_add_icon_description (added)
    • string/profile_selection_add_profile_text (added)
    • string/profile_selection_admin_label (added)
    • string/profile_selection_header (added)
    • string/profile_selection_profile_icon_description (added)
  • Style: 831 (old), 831 (new), 0 (No change)
  • 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: 18 MiB (old), 18 MiB (new), 42 KiB (Added)
APK download size (estimated): 17 MiB (old), 17 MiB (new), 36 KiB (Added)
Method count: 260219 (old), 260523 (new), 304 (Added)
Resources: 6768 (old), 6818 (new), 50 (Added)

  • Color: 967 (old), 975 (new), 8 (Added)
  • Dimen: 1044 (old), 1065 (new), 21 (Added)
  • Drawable: 335 (old), 338 (new), 3 (Added)
  • Id: 1275 (old), 1286 (new), 11 (Added)
  • Layout: 380 (old), 382 (new), 2 (Added)
  • String: 852 (old), 857 (new), 5 (Added)

Configuration hdpi

APK file size: 50 KiB (old), 50 KiB (new), 36 bytes (Added)
APK download size (estimated): 18 KiB (old), 18 KiB (new), 3 bytes (Added)

Configuration ldpi

APK file size: 49 KiB (old), 49 KiB (new), 48 bytes (Added)
APK download size (estimated): 14 KiB (old), 14 KiB (new), 0 bytes (No change)

Configuration mdpi

APK file size: 45 KiB (old), 45 KiB (new), 48 bytes (Added)
APK download size (estimated): 14 KiB (old), 14 KiB (new), 1 bytes (Added)

Configuration tvdpi

APK file size: 86 KiB (old), 86 KiB (new), 60 bytes (Added)
APK download size (estimated): 29 KiB (old), 29 KiB (new), 1 bytes (Added)

Configuration xhdpi

APK file size: 57 KiB (old), 57 KiB (new), 36 bytes (Added)
APK download size (estimated): 21 KiB (old), 21 KiB (new), 1 bytes (Removed)

Configuration xxhdpi

APK file size: 63 KiB (old), 63 KiB (new), 48 bytes (Added)
APK download size (estimated): 29 KiB (old), 29 KiB (new), 0 bytes (No change)

Configuration xxxhdpi

APK file size: 63 KiB (old), 63 KiB (new), 60 bytes (Added)
APK download size (estimated): 28 KiB (old), 28 KiB (new), 4 bytes (Removed)

Alpha

Expand to see flavor specifics

Universal APK

APK file size: 11 MiB (old), 11 MiB (new), 36 KiB (Added)

APK download size (estimated): 10 MiB (old), 10 MiB (new), 31 KiB (Added)

Method count: 116287 (old), 116472 (new), 185 (Added)

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

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

Resources: 5786 (old), 5827 (new), 41 (Added)

  • Anim: 33 (old), 33 (new), 0 (No change)
  • Animator: 24 (old), 24 (new), 0 (No change)
  • Array: 14 (old), 14 (new), 0 (No change)
  • Attr: 888 (old), 888 (new), 0 (No change)
  • Bool: 8 (old), 8 (new), 0 (No change)
  • Color: 820 (old), 826 (new), 6 (Added):
    • color/color_def_charcoal (added)
    • color/color_def_ivory (added)
    • color/color_palette_profile_selection_background_color (added)
    • color/component_color_profile_icon_stroke_color (added)
    • color/component_color_profile_selection_background_color (added)
    • And 1 other
  • Dimen: 780 (old), 796 (new), 16 (Added):
    • dimen/profile_item_profile_icon_size (added)
    • dimen/profile_item_profile_picture_stroke_width (added)
    • dimen/profile_selection_fragment_add_button_margin_bottom (added)
    • dimen/profile_selection_fragment_add_profile_button_margin_end (added)
    • dimen/profile_selection_fragment_header_text_size (added)
    • And 11 others
  • Drawable: 342 (old), 345 (new), 3 (Added):
    • drawable/ic_add (added)
    • drawable/ic_chevron_left (added)
    • drawable/ic_chevron_right (added)
  • Id: 1221 (old), 1232 (new), 11 (Added):
    • id/add_profile_button (added)
    • id/add_profile_prompt (added)
    • id/profile_avatar (added)
    • id/profile_item_container (added)
    • id/profile_list_scroll_left (added)
    • And 6 others
  • Integer: 32 (old), 32 (new), 0 (No change)
  • Interpolator: 11 (old), 11 (new), 0 (No change)
  • Layout: 343 (old), 345 (new), 2 (Added):
    • layout/profile_item (added)
    • layout/profile_selection_fragment (added)
  • 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: 785 (old), 788 (new), 3 (Added):
    • string/profile_selection_add_profile_text (added)
    • string/profile_selection_header (added)
    • string/profile_selection_profile_icon_description (added)
  • Style: 472 (old), 472 (new), 0 (No change)
  • 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: 11 MiB (old), 11 MiB (new), 35 KiB (Added)
APK download size (estimated): 10 MiB (old), 10 MiB (new), 27 KiB (Added)
Method count: 116287 (old), 116472 (new), 185 (Added)
Resources: 5743 (old), 5784 (new), 41 (Added)

  • Color: 820 (old), 826 (new), 6 (Added)
  • Dimen: 778 (old), 794 (new), 16 (Added)
  • Drawable: 302 (old), 305 (new), 3 (Added)
  • Id: 1221 (old), 1232 (new), 11 (Added)
  • Layout: 343 (old), 345 (new), 2 (Added)
  • String: 785 (old), 788 (new), 3 (Added)

Configuration hdpi

APK file size: 43 KiB (old), 43 KiB (new), 0 bytes (No change)
APK download size (estimated): 17 KiB (old), 17 KiB (new), 0 bytes (No change)

Configuration ldpi

APK file size: 44 KiB (old), 44 KiB (new), 0 bytes (No change)
APK download size (estimated): 13 KiB (old), 13 KiB (new), 0 bytes (No change)

Configuration mdpi

APK file size: 38 KiB (old), 38 KiB (new), 0 bytes (No change)
APK download size (estimated): 13 KiB (old), 13 KiB (new), 0 bytes (No change)

Configuration tvdpi

APK file size: 73 KiB (old), 73 KiB (new), 0 bytes (No change)
APK download size (estimated): 27 KiB (old), 27 KiB (new), 0 bytes (No change)

Configuration xhdpi

APK file size: 50 KiB (old), 50 KiB (new), 0 bytes (No change)
APK download size (estimated): 20 KiB (old), 20 KiB (new), 0 bytes (No change)

Configuration xxhdpi

APK file size: 55 KiB (old), 55 KiB (new), 0 bytes (No change)
APK download size (estimated): 28 KiB (old), 28 KiB (new), 0 bytes (No change)

Configuration xxxhdpi

APK file size: 55 KiB (old), 55 KiB (new), 0 bytes (No change)
APK download size (estimated): 27 KiB (old), 27 KiB (new), 0 bytes (No change)

Beta

Expand to see flavor specifics

Universal APK

APK file size: 11 MiB (old), 11 MiB (new), 36 KiB (Added)

APK download size (estimated): 10 MiB (old), 10 MiB (new), 30 KiB (Added)

Method count: 116293 (old), 116478 (new), 185 (Added)

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

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

Resources: 5786 (old), 5827 (new), 41 (Added)

  • Anim: 33 (old), 33 (new), 0 (No change)
  • Animator: 24 (old), 24 (new), 0 (No change)
  • Array: 14 (old), 14 (new), 0 (No change)
  • Attr: 888 (old), 888 (new), 0 (No change)
  • Bool: 8 (old), 8 (new), 0 (No change)
  • Color: 820 (old), 826 (new), 6 (Added):
    • color/color_def_charcoal (added)
    • color/color_def_ivory (added)
    • color/color_palette_profile_selection_background_color (added)
    • color/component_color_profile_icon_stroke_color (added)
    • color/component_color_profile_selection_background_color (added)
    • And 1 other
  • Dimen: 780 (old), 796 (new), 16 (Added):
    • dimen/profile_item_profile_icon_size (added)
    • dimen/profile_item_profile_picture_stroke_width (added)
    • dimen/profile_selection_fragment_add_button_margin_bottom (added)
    • dimen/profile_selection_fragment_add_profile_button_margin_end (added)
    • dimen/profile_selection_fragment_header_text_size (added)
    • And 11 others
  • Drawable: 342 (old), 345 (new), 3 (Added):
    • drawable/ic_add (added)
    • drawable/ic_chevron_left (added)
    • drawable/ic_chevron_right (added)
  • Id: 1221 (old), 1232 (new), 11 (Added):
    • id/add_profile_button (added)
    • id/add_profile_prompt (added)
    • id/profile_avatar (added)
    • id/profile_item_container (added)
    • id/profile_list_scroll_left (added)
    • And 6 others
  • Integer: 32 (old), 32 (new), 0 (No change)
  • Interpolator: 11 (old), 11 (new), 0 (No change)
  • Layout: 343 (old), 345 (new), 2 (Added):
    • layout/profile_item (added)
    • layout/profile_selection_fragment (added)
  • 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: 785 (old), 788 (new), 3 (Added):
    • string/profile_selection_add_profile_text (added)
    • string/profile_selection_header (added)
    • string/profile_selection_profile_icon_description (added)
  • Style: 472 (old), 472 (new), 0 (No change)
  • 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: 11 MiB (old), 11 MiB (new), 35 KiB (Added)
APK download size (estimated): 10 MiB (old), 10 MiB (new), 32 KiB (Added)
Method count: 116293 (old), 116478 (new), 185 (Added)
Resources: 5743 (old), 5784 (new), 41 (Added)

  • Color: 820 (old), 826 (new), 6 (Added)
  • Dimen: 778 (old), 794 (new), 16 (Added)
  • Drawable: 302 (old), 305 (new), 3 (Added)
  • Id: 1221 (old), 1232 (new), 11 (Added)
  • Layout: 343 (old), 345 (new), 2 (Added)
  • String: 785 (old), 788 (new), 3 (Added)

Configuration hdpi

APK file size: 43 KiB (old), 43 KiB (new), 0 bytes (No change)
APK download size (estimated): 17 KiB (old), 17 KiB (new), 0 bytes (No change)

Configuration ldpi

APK file size: 44 KiB (old), 44 KiB (new), 0 bytes (No change)
APK download size (estimated): 13 KiB (old), 13 KiB (new), 0 bytes (No change)

Configuration mdpi

APK file size: 38 KiB (old), 38 KiB (new), 0 bytes (No change)
APK download size (estimated): 13 KiB (old), 13 KiB (new), 0 bytes (No change)

Configuration tvdpi

APK file size: 73 KiB (old), 73 KiB (new), 0 bytes (No change)
APK download size (estimated): 27 KiB (old), 27 KiB (new), 0 bytes (No change)

Configuration xhdpi

APK file size: 50 KiB (old), 50 KiB (new), 0 bytes (No change)
APK download size (estimated): 20 KiB (old), 20 KiB (new), 0 bytes (No change)

Configuration xxhdpi

APK file size: 55 KiB (old), 55 KiB (new), 0 bytes (No change)
APK download size (estimated): 28 KiB (old), 28 KiB (new), 0 bytes (No change)

Configuration xxxhdpi

APK file size: 55 KiB (old), 55 KiB (new), 0 bytes (No change)
APK download size (estimated): 27 KiB (old), 27 KiB (new), 0 bytes (No change)

Ga

Expand to see flavor specifics

Universal APK

APK file size: 11 MiB (old), 11 MiB (new), 36 KiB (Added)

APK download size (estimated): 10 MiB (old), 10 MiB (new), 27 KiB (Added)

Method count: 116293 (old), 116478 (new), 185 (Added)

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

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

Resources: 5786 (old), 5827 (new), 41 (Added)

  • Anim: 33 (old), 33 (new), 0 (No change)
  • Animator: 24 (old), 24 (new), 0 (No change)
  • Array: 14 (old), 14 (new), 0 (No change)
  • Attr: 888 (old), 888 (new), 0 (No change)
  • Bool: 8 (old), 8 (new), 0 (No change)
  • Color: 820 (old), 826 (new), 6 (Added):
    • color/color_def_charcoal (added)
    • color/color_def_ivory (added)
    • color/color_palette_profile_selection_background_color (added)
    • color/component_color_profile_icon_stroke_color (added)
    • color/component_color_profile_selection_background_color (added)
    • And 1 other
  • Dimen: 780 (old), 796 (new), 16 (Added):
    • dimen/profile_item_profile_icon_size (added)
    • dimen/profile_item_profile_picture_stroke_width (added)
    • dimen/profile_selection_fragment_add_button_margin_bottom (added)
    • dimen/profile_selection_fragment_add_profile_button_margin_end (added)
    • dimen/profile_selection_fragment_header_text_size (added)
    • And 11 others
  • Drawable: 342 (old), 345 (new), 3 (Added):
    • drawable/ic_add (added)
    • drawable/ic_chevron_left (added)
    • drawable/ic_chevron_right (added)
  • Id: 1221 (old), 1232 (new), 11 (Added):
    • id/add_profile_button (added)
    • id/add_profile_prompt (added)
    • id/profile_avatar (added)
    • id/profile_item_container (added)
    • id/profile_list_scroll_left (added)
    • And 6 others
  • Integer: 32 (old), 32 (new), 0 (No change)
  • Interpolator: 11 (old), 11 (new), 0 (No change)
  • Layout: 343 (old), 345 (new), 2 (Added):
    • layout/profile_item (added)
    • layout/profile_selection_fragment (added)
  • 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: 785 (old), 788 (new), 3 (Added):
    • string/profile_selection_add_profile_text (added)
    • string/profile_selection_header (added)
    • string/profile_selection_profile_icon_description (added)
  • Style: 472 (old), 472 (new), 0 (No change)
  • 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: 11 MiB (old), 11 MiB (new), 35 KiB (Added)
APK download size (estimated): 10 MiB (old), 10 MiB (new), 31 KiB (Added)
Method count: 116293 (old), 116478 (new), 185 (Added)
Resources: 5743 (old), 5784 (new), 41 (Added)

  • Color: 820 (old), 826 (new), 6 (Added)
  • Dimen: 778 (old), 794 (new), 16 (Added)
  • Drawable: 302 (old), 305 (new), 3 (Added)
  • Id: 1221 (old), 1232 (new), 11 (Added)
  • Layout: 343 (old), 345 (new), 2 (Added)
  • String: 785 (old), 788 (new), 3 (Added)

Configuration hdpi

APK file size: 43 KiB (old), 43 KiB (new), 0 bytes (No change)
APK download size (estimated): 17 KiB (old), 17 KiB (new), 0 bytes (No change)

Configuration ldpi

APK file size: 44 KiB (old), 44 KiB (new), 0 bytes (No change)
APK download size (estimated): 13 KiB (old), 13 KiB (new), 0 bytes (No change)

Configuration mdpi

APK file size: 38 KiB (old), 38 KiB (new), 0 bytes (No change)
APK download size (estimated): 13 KiB (old), 13 KiB (new), 0 bytes (No change)

Configuration tvdpi

APK file size: 73 KiB (old), 73 KiB (new), 0 bytes (No change)
APK download size (estimated): 27 KiB (old), 27 KiB (new), 0 bytes (No change)

Configuration xhdpi

APK file size: 50 KiB (old), 50 KiB (new), 0 bytes (No change)
APK download size (estimated): 20 KiB (old), 20 KiB (new), 0 bytes (No change)

Configuration xxhdpi

APK file size: 55 KiB (old), 55 KiB (new), 0 bytes (No change)
APK download size (estimated): 28 KiB (old), 28 KiB (new), 0 bytes (No change)

Configuration xxxhdpi

APK file size: 55 KiB (old), 55 KiB (new), 0 bytes (No change)
APK download size (estimated): 27 KiB (old), 27 KiB (new), 0 bytes (No change)

@BenHenning
Copy link
Member

@adhiamboperes I think you mentioned in our quick sync today that you'd like another review on this PR. Is that correct, and does that mean that this PR is ready for another pass? I'm asking since it's still assigned to you, so I wasn't sure. :)

@adhiamboperes
Copy link
Collaborator Author

@BenHenning, PTAL.

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: 19 MiB (old), 19 MiB (new), 38 KiB (Added)

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

Method count: 260263 (old), 260552 (new), 289 (Added)

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

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

Resources: 6820 (old), 6870 (new), 50 (Added)

  • Anim: 43 (old), 43 (new), 0 (No change)
  • Animator: 26 (old), 26 (new), 0 (No change)
  • Array: 15 (old), 15 (new), 0 (No change)
  • Attr: 922 (old), 922 (new), 0 (No change)
  • Bool: 9 (old), 9 (new), 0 (No change)
  • Color: 967 (old), 975 (new), 8 (Added):
    • color/color_def_charcoal (added)
    • color/color_def_ivory (added)
    • color/color_palette_profile_selection_background_color (added)
    • color/color_palette_profile_selection_profile_icon_background_color (added)
    • color/component_color_profile_icon_stroke_color (added)
    • And 3 others
  • Dimen: 1048 (old), 1069 (new), 21 (Added):
    • dimen/profile_item_profile_icon_size (added)
    • dimen/profile_item_profile_picture_stroke_width (added)
    • dimen/profile_selection_activity_profile_icon_size (added)
    • dimen/profile_selection_fragment_add_button_margin_bottom (added)
    • dimen/profile_selection_fragment_add_profile_button_margin_end (added)
    • And 16 others
  • Drawable: 380 (old), 383 (new), 3 (Added):
    • drawable/ic_add (added)
    • drawable/ic_chevron_left (added)
    • drawable/ic_chevron_right (added)
  • Id: 1276 (old), 1287 (new), 11 (Added):
    • id/add_profile_button (added)
    • id/add_profile_prompt (added)
    • id/profile_avatar (added)
    • id/profile_item_container (added)
    • id/profile_list_scroll_left (added)
    • And 6 others
  • Integer: 37 (old), 37 (new), 0 (No change)
  • Interpolator: 11 (old), 11 (new), 0 (No change)
  • Layout: 380 (old), 382 (new), 2 (Added):
    • layout/profile_item (added)
    • layout/profile_selection_fragment (added)
  • Menu: 3 (old), 3 (new), 0 (No change)
  • 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: 853 (old), 858 (new), 5 (Added):
    • string/profile_selection_add_icon_description (added)
    • string/profile_selection_add_profile_text (added)
    • string/profile_selection_admin_label (added)
    • string/profile_selection_header (added)
    • string/profile_selection_profile_icon_description (added)
  • Style: 831 (old), 831 (new), 0 (No change)
  • 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: 18 MiB (old), 18 MiB (new), 37 KiB (Added)
APK download size (estimated): 17 MiB (old), 17 MiB (new), 28 KiB (Added)
Method count: 260263 (old), 260552 (new), 289 (Added)
Resources: 6770 (old), 6820 (new), 50 (Added)

  • Color: 967 (old), 975 (new), 8 (Added)
  • Dimen: 1044 (old), 1065 (new), 21 (Added)
  • Drawable: 335 (old), 338 (new), 3 (Added)
  • Id: 1276 (old), 1287 (new), 11 (Added)
  • Layout: 380 (old), 382 (new), 2 (Added)
  • String: 853 (old), 858 (new), 5 (Added)

Configuration hdpi

APK file size: 50 KiB (old), 50 KiB (new), 36 bytes (Added)
APK download size (estimated): 18 KiB (old), 18 KiB (new), 3 bytes (Added)

Configuration ldpi

APK file size: 49 KiB (old), 49 KiB (new), 48 bytes (Added)
APK download size (estimated): 14 KiB (old), 14 KiB (new), 0 bytes (No change)

Configuration mdpi

APK file size: 45 KiB (old), 45 KiB (new), 48 bytes (Added)
APK download size (estimated): 14 KiB (old), 14 KiB (new), 1 bytes (Added)

Configuration tvdpi

APK file size: 86 KiB (old), 86 KiB (new), 60 bytes (Added)
APK download size (estimated): 29 KiB (old), 29 KiB (new), 1 bytes (Added)

Configuration xhdpi

APK file size: 57 KiB (old), 57 KiB (new), 36 bytes (Added)
APK download size (estimated): 21 KiB (old), 21 KiB (new), 1 bytes (Removed)

Configuration xxhdpi

APK file size: 63 KiB (old), 63 KiB (new), 48 bytes (Added)
APK download size (estimated): 29 KiB (old), 29 KiB (new), 0 bytes (No change)

Configuration xxxhdpi

APK file size: 63 KiB (old), 63 KiB (new), 60 bytes (Added)
APK download size (estimated): 28 KiB (old), 28 KiB (new), 4 bytes (Removed)

Alpha

Expand to see flavor specifics

Universal APK

APK file size: 11 MiB (old), 11 MiB (new), 33 KiB (Added)

APK download size (estimated): 10 MiB (old), 10 MiB (new), 27 KiB (Added)

Method count: 115793 (old), 115978 (new), 185 (Added)

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

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

Resources: 5788 (old), 5829 (new), 41 (Added)

  • Anim: 33 (old), 33 (new), 0 (No change)
  • Animator: 24 (old), 24 (new), 0 (No change)
  • Array: 14 (old), 14 (new), 0 (No change)
  • Attr: 888 (old), 888 (new), 0 (No change)
  • Bool: 8 (old), 8 (new), 0 (No change)
  • Color: 820 (old), 826 (new), 6 (Added):
    • color/color_def_charcoal (added)
    • color/color_def_ivory (added)
    • color/color_palette_profile_selection_background_color (added)
    • color/component_color_profile_icon_stroke_color (added)
    • color/component_color_profile_selection_background_color (added)
    • And 1 other
  • Dimen: 780 (old), 796 (new), 16 (Added):
    • dimen/profile_item_profile_icon_size (added)
    • dimen/profile_item_profile_picture_stroke_width (added)
    • dimen/profile_selection_fragment_add_button_margin_bottom (added)
    • dimen/profile_selection_fragment_add_profile_button_margin_end (added)
    • dimen/profile_selection_fragment_header_text_size (added)
    • And 11 others
  • Drawable: 342 (old), 345 (new), 3 (Added):
    • drawable/ic_add (added)
    • drawable/ic_chevron_left (added)
    • drawable/ic_chevron_right (added)
  • Id: 1222 (old), 1233 (new), 11 (Added):
    • id/add_profile_button (added)
    • id/add_profile_prompt (added)
    • id/profile_avatar (added)
    • id/profile_item_container (added)
    • id/profile_list_scroll_left (added)
    • And 6 others
  • Integer: 32 (old), 32 (new), 0 (No change)
  • Interpolator: 11 (old), 11 (new), 0 (No change)
  • Layout: 343 (old), 345 (new), 2 (Added):
    • layout/profile_item (added)
    • layout/profile_selection_fragment (added)
  • 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: 786 (old), 789 (new), 3 (Added):
    • string/profile_selection_add_profile_text (added)
    • string/profile_selection_header (added)
    • string/profile_selection_profile_icon_description (added)
  • Style: 472 (old), 472 (new), 0 (No change)
  • 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: 11 MiB (old), 11 MiB (new), 33 KiB (Added)
APK download size (estimated): 10 MiB (old), 10 MiB (new), 30 KiB (Added)
Method count: 115793 (old), 115978 (new), 185 (Added)
Resources: 5745 (old), 5786 (new), 41 (Added)

  • Color: 820 (old), 826 (new), 6 (Added)
  • Dimen: 778 (old), 794 (new), 16 (Added)
  • Drawable: 302 (old), 305 (new), 3 (Added)
  • Id: 1222 (old), 1233 (new), 11 (Added)
  • Layout: 343 (old), 345 (new), 2 (Added)
  • String: 786 (old), 789 (new), 3 (Added)

Configuration hdpi

APK file size: 43 KiB (old), 43 KiB (new), 0 bytes (No change)
APK download size (estimated): 17 KiB (old), 17 KiB (new), 0 bytes (No change)

Configuration ldpi

APK file size: 44 KiB (old), 44 KiB (new), 0 bytes (No change)
APK download size (estimated): 13 KiB (old), 13 KiB (new), 0 bytes (No change)

Configuration mdpi

APK file size: 38 KiB (old), 38 KiB (new), 0 bytes (No change)
APK download size (estimated): 13 KiB (old), 13 KiB (new), 0 bytes (No change)

Configuration tvdpi

APK file size: 73 KiB (old), 73 KiB (new), 0 bytes (No change)
APK download size (estimated): 27 KiB (old), 27 KiB (new), 0 bytes (No change)

Configuration xhdpi

APK file size: 50 KiB (old), 50 KiB (new), 0 bytes (No change)
APK download size (estimated): 20 KiB (old), 20 KiB (new), 0 bytes (No change)

Configuration xxhdpi

APK file size: 55 KiB (old), 55 KiB (new), 0 bytes (No change)
APK download size (estimated): 28 KiB (old), 28 KiB (new), 0 bytes (No change)

Configuration xxxhdpi

APK file size: 55 KiB (old), 55 KiB (new), 0 bytes (No change)
APK download size (estimated): 27 KiB (old), 27 KiB (new), 0 bytes (No change)

Beta

Expand to see flavor specifics

Universal APK

APK file size: 11 MiB (old), 11 MiB (new), 34 KiB (Added)

APK download size (estimated): 10 MiB (old), 10 MiB (new), 31 KiB (Added)

Method count: 115799 (old), 115984 (new), 185 (Added)

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

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

Resources: 5788 (old), 5829 (new), 41 (Added)

  • Anim: 33 (old), 33 (new), 0 (No change)
  • Animator: 24 (old), 24 (new), 0 (No change)
  • Array: 14 (old), 14 (new), 0 (No change)
  • Attr: 888 (old), 888 (new), 0 (No change)
  • Bool: 8 (old), 8 (new), 0 (No change)
  • Color: 820 (old), 826 (new), 6 (Added):
    • color/color_def_charcoal (added)
    • color/color_def_ivory (added)
    • color/color_palette_profile_selection_background_color (added)
    • color/component_color_profile_icon_stroke_color (added)
    • color/component_color_profile_selection_background_color (added)
    • And 1 other
  • Dimen: 780 (old), 796 (new), 16 (Added):
    • dimen/profile_item_profile_icon_size (added)
    • dimen/profile_item_profile_picture_stroke_width (added)
    • dimen/profile_selection_fragment_add_button_margin_bottom (added)
    • dimen/profile_selection_fragment_add_profile_button_margin_end (added)
    • dimen/profile_selection_fragment_header_text_size (added)
    • And 11 others
  • Drawable: 342 (old), 345 (new), 3 (Added):
    • drawable/ic_add (added)
    • drawable/ic_chevron_left (added)
    • drawable/ic_chevron_right (added)
  • Id: 1222 (old), 1233 (new), 11 (Added):
    • id/add_profile_button (added)
    • id/add_profile_prompt (added)
    • id/profile_avatar (added)
    • id/profile_item_container (added)
    • id/profile_list_scroll_left (added)
    • And 6 others
  • Integer: 32 (old), 32 (new), 0 (No change)
  • Interpolator: 11 (old), 11 (new), 0 (No change)
  • Layout: 343 (old), 345 (new), 2 (Added):
    • layout/profile_item (added)
    • layout/profile_selection_fragment (added)
  • 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: 786 (old), 789 (new), 3 (Added):
    • string/profile_selection_add_profile_text (added)
    • string/profile_selection_header (added)
    • string/profile_selection_profile_icon_description (added)
  • Style: 472 (old), 472 (new), 0 (No change)
  • 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: 10 MiB (old), 11 MiB (new), 33 KiB (Added)
APK download size (estimated): 9 MiB (old), 10 MiB (new), 26 KiB (Added)
Method count: 115799 (old), 115984 (new), 185 (Added)
Resources: 5745 (old), 5786 (new), 41 (Added)

  • Color: 820 (old), 826 (new), 6 (Added)
  • Dimen: 778 (old), 794 (new), 16 (Added)
  • Drawable: 302 (old), 305 (new), 3 (Added)
  • Id: 1222 (old), 1233 (new), 11 (Added)
  • Layout: 343 (old), 345 (new), 2 (Added)
  • String: 786 (old), 789 (new), 3 (Added)

Configuration hdpi

APK file size: 43 KiB (old), 43 KiB (new), 0 bytes (No change)
APK download size (estimated): 17 KiB (old), 17 KiB (new), 0 bytes (No change)

Configuration ldpi

APK file size: 44 KiB (old), 44 KiB (new), 0 bytes (No change)
APK download size (estimated): 13 KiB (old), 13 KiB (new), 0 bytes (No change)

Configuration mdpi

APK file size: 38 KiB (old), 38 KiB (new), 0 bytes (No change)
APK download size (estimated): 13 KiB (old), 13 KiB (new), 0 bytes (No change)

Configuration tvdpi

APK file size: 73 KiB (old), 73 KiB (new), 0 bytes (No change)
APK download size (estimated): 27 KiB (old), 27 KiB (new), 0 bytes (No change)

Configuration xhdpi

APK file size: 50 KiB (old), 50 KiB (new), 0 bytes (No change)
APK download size (estimated): 20 KiB (old), 20 KiB (new), 0 bytes (No change)

Configuration xxhdpi

APK file size: 55 KiB (old), 55 KiB (new), 0 bytes (No change)
APK download size (estimated): 28 KiB (old), 28 KiB (new), 0 bytes (No change)

Configuration xxxhdpi

APK file size: 55 KiB (old), 55 KiB (new), 0 bytes (No change)
APK download size (estimated): 27 KiB (old), 27 KiB (new), 0 bytes (No change)

Ga

Expand to see flavor specifics

Universal APK

APK file size: 11 MiB (old), 11 MiB (new), 34 KiB (Added)

APK download size (estimated): 10 MiB (old), 10 MiB (new), 31 KiB (Added)

Method count: 115799 (old), 115984 (new), 185 (Added)

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

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

Resources: 5788 (old), 5829 (new), 41 (Added)

  • Anim: 33 (old), 33 (new), 0 (No change)
  • Animator: 24 (old), 24 (new), 0 (No change)
  • Array: 14 (old), 14 (new), 0 (No change)
  • Attr: 888 (old), 888 (new), 0 (No change)
  • Bool: 8 (old), 8 (new), 0 (No change)
  • Color: 820 (old), 826 (new), 6 (Added):
    • color/color_def_charcoal (added)
    • color/color_def_ivory (added)
    • color/color_palette_profile_selection_background_color (added)
    • color/component_color_profile_icon_stroke_color (added)
    • color/component_color_profile_selection_background_color (added)
    • And 1 other
  • Dimen: 780 (old), 796 (new), 16 (Added):
    • dimen/profile_item_profile_icon_size (added)
    • dimen/profile_item_profile_picture_stroke_width (added)
    • dimen/profile_selection_fragment_add_button_margin_bottom (added)
    • dimen/profile_selection_fragment_add_profile_button_margin_end (added)
    • dimen/profile_selection_fragment_header_text_size (added)
    • And 11 others
  • Drawable: 342 (old), 345 (new), 3 (Added):
    • drawable/ic_add (added)
    • drawable/ic_chevron_left (added)
    • drawable/ic_chevron_right (added)
  • Id: 1222 (old), 1233 (new), 11 (Added):
    • id/add_profile_button (added)
    • id/add_profile_prompt (added)
    • id/profile_avatar (added)
    • id/profile_item_container (added)
    • id/profile_list_scroll_left (added)
    • And 6 others
  • Integer: 32 (old), 32 (new), 0 (No change)
  • Interpolator: 11 (old), 11 (new), 0 (No change)
  • Layout: 343 (old), 345 (new), 2 (Added):
    • layout/profile_item (added)
    • layout/profile_selection_fragment (added)
  • 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: 786 (old), 789 (new), 3 (Added):
    • string/profile_selection_add_profile_text (added)
    • string/profile_selection_header (added)
    • string/profile_selection_profile_icon_description (added)
  • Style: 472 (old), 472 (new), 0 (No change)
  • 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: 10 MiB (old), 11 MiB (new), 33 KiB (Added)
APK download size (estimated): 9 MiB (old), 10 MiB (new), 27 KiB (Added)
Method count: 115799 (old), 115984 (new), 185 (Added)
Resources: 5745 (old), 5786 (new), 41 (Added)

  • Color: 820 (old), 826 (new), 6 (Added)
  • Dimen: 778 (old), 794 (new), 16 (Added)
  • Drawable: 302 (old), 305 (new), 3 (Added)
  • Id: 1222 (old), 1233 (new), 11 (Added)
  • Layout: 343 (old), 345 (new), 2 (Added)
  • String: 786 (old), 789 (new), 3 (Added)

Configuration hdpi

APK file size: 43 KiB (old), 43 KiB (new), 0 bytes (No change)
APK download size (estimated): 17 KiB (old), 17 KiB (new), 0 bytes (No change)

Configuration ldpi

APK file size: 44 KiB (old), 44 KiB (new), 0 bytes (No change)
APK download size (estimated): 13 KiB (old), 13 KiB (new), 0 bytes (No change)

Configuration mdpi

APK file size: 38 KiB (old), 38 KiB (new), 0 bytes (No change)
APK download size (estimated): 13 KiB (old), 13 KiB (new), 0 bytes (No change)

Configuration tvdpi

APK file size: 73 KiB (old), 73 KiB (new), 0 bytes (No change)
APK download size (estimated): 27 KiB (old), 27 KiB (new), 0 bytes (No change)

Configuration xhdpi

APK file size: 50 KiB (old), 50 KiB (new), 0 bytes (No change)
APK download size (estimated): 20 KiB (old), 20 KiB (new), 0 bytes (No change)

Configuration xxhdpi

APK file size: 55 KiB (old), 55 KiB (new), 0 bytes (No change)
APK download size (estimated): 28 KiB (old), 28 KiB (new), 0 bytes (No change)

Configuration xxxhdpi

APK file size: 55 KiB (old), 55 KiB (new), 0 bytes (No change)
APK download size (estimated): 27 KiB (old), 27 KiB (new), 0 bytes (No change)

Copy link
Member

@BenHenning BenHenning left a comment

Choose a reason for hiding this comment

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

Thanks @adhiamboperes! Took another pass. I think most of my previous comments have been addressed, but a few haven't. Besides the open conversations, this includes:

  • The 'add more profiles' and floating action button feel a bit crowded on portrait and would benefit from a bit more space (similar to the landscape version).
  • As discussed during today's CLaM meeting, the landscape layout looks a bit off due to the solo learner bubble being so far left. I'm not quite sure that it should be centered, though, as landscape layouts are usually designed to have important elements easily reachable with one's thumbs. Perhaps placing it at the 1/4 or 1/3 portion of the screen from the left might be a bit cleaner? This seems even worse on tablet landscape mode--that's a lot of blank whitespace.
  • As discussed during today's CLaM meeting, how does the new layout behave with Talkback?

PTAL at the open comment threads and the above.

Comment on lines 173 to 174
val offset =
if (isLeft) scrollDistance - scrollableWidth else scrollableWidth - scrollDistance
Copy link
Member

Choose a reason for hiding this comment

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

This looks really nice! Just to check (since I couldn't quite determine from the video): does RTL mode start with being scrolled all the way to the right? I see that the profile list is correctly reversed (with admin starting at the right), so just wanted to check for initial scroll state.

@@ -1225,7 +1226,7 @@ class ProfileManagementController @Inject constructor(
// TODO(#3616): Migrate to the proper SDK 29+ APIs.
@Suppress("DEPRECATION") // The code is correct for targeted versions of Android.
val bitmap = MediaStore.Images.Media.getBitmap(context.contentResolver, avatarImagePath)
val fileName = avatarImagePath.pathSegments.last()
val fileName = UUID.randomUUID().toString()
Copy link
Member

Choose a reason for hiding this comment

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

Reminder on this comment since I don't think it was addressed yet.

Copy link

oppiabot bot commented Feb 5, 2025

Hi @adhiamboperes, I'm going to mark this PR as stale because it hasn't had any updates for 7 days. If no further activity occurs within 7 days, it will be automatically closed so that others can take up the issue.
If you are still working on this PR, please make a follow-up commit within 3 days (and submit it for review, if applicable). Please also let us know if you are stuck so we can help you!

@oppiabot oppiabot bot added stale Corresponds to items that haven't seen a recent update and may be automatically closed. and removed stale Corresponds to items that haven't seen a recent update and may be automatically closed. labels Feb 5, 2025
@adhiamboperes
Copy link
Collaborator Author

@BenHenning, PTAL.

I have addressed all pending comments, and update the screenshots in the main PR body. I should be able to upload talkback video tomorrow -- currently facing some physical device issues.

@oppiabot oppiabot bot assigned BenHenning and unassigned adhiamboperes Feb 6, 2025
Copy link

oppiabot bot commented Feb 6, 2025

Unassigning @adhiamboperes since a re-review was requested. @adhiamboperes, please make sure you have addressed all review comments. Thanks!

Copy link

github-actions bot commented Feb 6, 2025

Coverage Report

Results

Number of files assessed: 19
Overall Coverage: 0.00%
Coverage Analysis: PASS

Exempted coverage

Files exempted from coverage
File Exemption Reason
ProfileManagementController.ktdomain/src/main/java/org/oppia/android/domain/profile/ProfileManagementController.kt
This file is incompatible with code coverage tooling; skipping coverage check.
ViewComponentImpl.ktapp/src/main/java/org/oppia/android/app/view/ViewComponentImpl.kt
This file is exempted from having a test file; skipping coverage check.
ViewBindingShim.ktapp/src/main/java/org/oppia/android/app/shim/ViewBindingShim.kt
This file is exempted from having a test file; skipping coverage check.
ViewBindingShimImpl.ktapp/src/main/java/org/oppia/android/app/shim/ViewBindingShimImpl.kt
This file is exempted from having a test file; skipping coverage check.
ProfileChooserFragment.ktapp/src/main/java/org/oppia/android/app/profile/ProfileChooserFragment.kt
This file is incompatible with code coverage tooling; skipping coverage check.
ProfileClickListener.ktapp/src/main/java/org/oppia/android/app/profile/ProfileClickListener.kt
This file is exempted from having a test file; skipping coverage check.
ProfileListView.ktapp/src/main/java/org/oppia/android/app/profile/ProfileListView.kt
This file is exempted from having a test file; skipping coverage check.
ProfileItemViewModel.ktapp/src/main/java/org/oppia/android/app/profile/ProfileItemViewModel.kt
This file is exempted from having a test file; skipping coverage check.
ProfileChooserViewModel.ktapp/src/main/java/org/oppia/android/app/profile/ProfileChooserViewModel.kt
This file is exempted from having a test file; skipping coverage check.
ProfileChooserFragmentPresenterV1.ktapp/src/main/java/org/oppia/android/app/profile/ProfileChooserFragmentPresenterV1.kt
This file is exempted from having a test file; skipping coverage check.
ProfileChooserFragmentPresenter.ktapp/src/main/java/org/oppia/android/app/profile/ProfileChooserFragmentPresenter.kt
This file is exempted from having a test file; skipping coverage check.
StartSnapHelper.ktapp/src/main/java/org/oppia/android/app/recyclerview/StartSnapHelper.kt
This file is exempted from having a test file; skipping coverage check.
CreateProfileFragmentPresenter.ktapp/src/main/java/org/oppia/android/app/onboarding/CreateProfileFragmentPresenter.kt
This file is exempted from having a test file; skipping coverage check.
CreateProfileFragment.ktapp/src/main/java/org/oppia/android/app/onboarding/CreateProfileFragment.kt
This file is incompatible with code coverage tooling; skipping coverage check.
IntroActivityPresenter.ktapp/src/main/java/org/oppia/android/app/onboarding/IntroActivityPresenter.kt
This file is exempted from having a test file; skipping coverage check.
IntroActivity.ktapp/src/main/java/org/oppia/android/app/onboarding/IntroActivity.kt
This file is incompatible with code coverage tooling; skipping coverage check.
IntroFragment.ktapp/src/main/java/org/oppia/android/app/onboarding/IntroFragment.kt
This file is incompatible with code coverage tooling; skipping coverage check.
IntroFragmentPresenter.ktapp/src/main/java/org/oppia/android/app/onboarding/IntroFragmentPresenter.kt
This file is exempted from having a test file; skipping coverage check.
TopicFragmentPresenter.ktapp/src/main/java/org/oppia/android/app/topic/TopicFragmentPresenter.kt
This file is exempted from having a test file; skipping coverage check.

Refer test_file_exemptions.textproto for the comprehensive list of file exemptions and their required coverage percentages.

To learn more, visit the Oppia Android Code Coverage wiki page

Copy link

github-actions bot commented Feb 8, 2025

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: 19 MiB (old), 19 MiB (new), 40 KiB (Added)

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

Method count: 260299 (old), 260600 (new), 301 (Added)

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

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

Resources: 6830 (old), 6882 (new), 52 (Added)

  • Anim: 43 (old), 43 (new), 0 (No change)
  • Animator: 26 (old), 26 (new), 0 (No change)
  • Array: 15 (old), 15 (new), 0 (No change)
  • Attr: 922 (old), 922 (new), 0 (No change)
  • Bool: 9 (old), 9 (new), 0 (No change)
  • Color: 967 (old), 975 (new), 8 (Added):
    • color/color_def_charcoal (added)
    • color/color_def_ivory (added)
    • color/color_palette_profile_selection_background_color (added)
    • color/color_palette_profile_selection_profile_icon_background_color (added)
    • color/component_color_profile_icon_stroke_color (added)
    • And 3 others
  • Dimen: 1048 (old), 1071 (new), 23 (Added):
    • dimen/profile_item_profile_icon_size (added)
    • dimen/profile_item_profile_picture_stroke_width (added)
    • dimen/profile_selection_activity_profile_icon_size (added)
    • dimen/profile_selection_fragment_add_button_margin_bottom (added)
    • dimen/profile_selection_fragment_add_profile_button_margin_end (added)
    • And 18 others
  • Drawable: 380 (old), 383 (new), 3 (Added):
    • drawable/ic_add (added)
    • drawable/ic_chevron_left (added)
    • drawable/ic_chevron_right (added)
  • Id: 1285 (old), 1296 (new), 11 (Added):
    • id/add_profile_button (added)
    • id/add_profile_prompt (added)
    • id/profile_avatar (added)
    • id/profile_item_container (added)
    • id/profile_list_scroll_left (added)
    • And 6 others
  • Integer: 37 (old), 37 (new), 0 (No change)
  • Interpolator: 11 (old), 11 (new), 0 (No change)
  • Layout: 380 (old), 382 (new), 2 (Added):
    • layout/profile_item (added)
    • layout/profile_selection_fragment (added)
  • Menu: 3 (old), 3 (new), 0 (No change)
  • 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: 853 (old), 858 (new), 5 (Added):
    • string/learn (removed)
    • string/study (removed)
    • string/lessons (added)
    • string/profile_selection_add_icon_description (added)
    • string/profile_selection_add_profile_text (added)
    • And 4 others
  • Style: 832 (old), 832 (new), 0 (No change)
  • 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: 18 MiB (old), 18 MiB (new), 39 KiB (Added)
APK download size (estimated): 17 MiB (old), 17 MiB (new), 32 KiB (Added)
Method count: 260299 (old), 260600 (new), 301 (Added)
Resources: 6780 (old), 6832 (new), 52 (Added)

  • Color: 967 (old), 975 (new), 8 (Added)
  • Dimen: 1044 (old), 1067 (new), 23 (Added)
  • Drawable: 335 (old), 338 (new), 3 (Added)
  • Id: 1285 (old), 1296 (new), 11 (Added)
  • Layout: 380 (old), 382 (new), 2 (Added)
  • String: 853 (old), 858 (new), 5 (Added)

Configuration hdpi

APK file size: 50 KiB (old), 50 KiB (new), 36 bytes (Added)
APK download size (estimated): 18 KiB (old), 18 KiB (new), 6 bytes (Added)

Configuration ldpi

APK file size: 49 KiB (old), 49 KiB (new), 48 bytes (Added)
APK download size (estimated): 14 KiB (old), 14 KiB (new), 0 bytes (No change)

Configuration mdpi

APK file size: 45 KiB (old), 45 KiB (new), 48 bytes (Added)
APK download size (estimated): 14 KiB (old), 14 KiB (new), 1 bytes (Added)

Configuration tvdpi

APK file size: 86 KiB (old), 86 KiB (new), 60 bytes (Added)
APK download size (estimated): 29 KiB (old), 29 KiB (new), 0 bytes (No change)

Configuration xhdpi

APK file size: 57 KiB (old), 57 KiB (new), 36 bytes (Added)
APK download size (estimated): 21 KiB (old), 21 KiB (new), 1 bytes (Removed)

Configuration xxhdpi

APK file size: 63 KiB (old), 63 KiB (new), 48 bytes (Added)
APK download size (estimated): 29 KiB (old), 29 KiB (new), 1 bytes (Added)

Configuration xxxhdpi

APK file size: 63 KiB (old), 63 KiB (new), 60 bytes (Added)
APK download size (estimated): 28 KiB (old), 28 KiB (new), 0 bytes (No change)

Alpha

Expand to see flavor specifics

Universal APK

APK file size: 11 MiB (old), 11 MiB (new), 35 KiB (Added)

APK download size (estimated): 10 MiB (old), 10 MiB (new), 26 KiB (Added)

Method count: 115822 (old), 116011 (new), 189 (Added)

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

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

Resources: 5798 (old), 5841 (new), 43 (Added)

  • Anim: 33 (old), 33 (new), 0 (No change)
  • Animator: 24 (old), 24 (new), 0 (No change)
  • Array: 14 (old), 14 (new), 0 (No change)
  • Attr: 888 (old), 888 (new), 0 (No change)
  • Bool: 8 (old), 8 (new), 0 (No change)
  • Color: 820 (old), 826 (new), 6 (Added):
    • color/color_def_charcoal (added)
    • color/color_def_ivory (added)
    • color/color_palette_profile_selection_background_color (added)
    • color/component_color_profile_icon_stroke_color (added)
    • color/component_color_profile_selection_background_color (added)
    • And 1 other
  • Dimen: 780 (old), 798 (new), 18 (Added):
    • dimen/profile_item_profile_icon_size (added)
    • dimen/profile_item_profile_picture_stroke_width (added)
    • dimen/profile_selection_fragment_add_button_margin_bottom (added)
    • dimen/profile_selection_fragment_add_profile_button_margin_end (added)
    • dimen/profile_selection_fragment_header_margin (added)
    • And 13 others
  • Drawable: 342 (old), 345 (new), 3 (Added):
    • drawable/ic_add (added)
    • drawable/ic_chevron_left (added)
    • drawable/ic_chevron_right (added)
  • Id: 1231 (old), 1242 (new), 11 (Added):
    • id/add_profile_button (added)
    • id/add_profile_prompt (added)
    • id/profile_avatar (added)
    • id/profile_item_container (added)
    • id/profile_list_scroll_left (added)
    • And 6 others
  • Integer: 32 (old), 32 (new), 0 (No change)
  • Interpolator: 11 (old), 11 (new), 0 (No change)
  • Layout: 343 (old), 345 (new), 2 (Added):
    • layout/profile_item (added)
    • layout/profile_selection_fragment (added)
  • 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: 786 (old), 789 (new), 3 (Added):
    • string/learn (removed)
    • string/study (removed)
    • string/lessons (added)
    • string/profile_selection_add_profile_text (added)
    • string/profile_selection_header (added)
    • And 2 others
  • Style: 473 (old), 473 (new), 0 (No change)
  • 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: 11 MiB (old), 11 MiB (new), 34 KiB (Added)
APK download size (estimated): 10 MiB (old), 10 MiB (new), 29 KiB (Added)
Method count: 115822 (old), 116011 (new), 189 (Added)
Resources: 5755 (old), 5798 (new), 43 (Added)

  • Color: 820 (old), 826 (new), 6 (Added)
  • Dimen: 778 (old), 796 (new), 18 (Added)
  • Drawable: 302 (old), 305 (new), 3 (Added)
  • Id: 1231 (old), 1242 (new), 11 (Added)
  • Layout: 343 (old), 345 (new), 2 (Added)
  • String: 786 (old), 789 (new), 3 (Added)

Configuration hdpi

APK file size: 43 KiB (old), 43 KiB (new), 0 bytes (No change)
APK download size (estimated): 17 KiB (old), 17 KiB (new), 0 bytes (No change)

Configuration ldpi

APK file size: 44 KiB (old), 44 KiB (new), 0 bytes (No change)
APK download size (estimated): 13 KiB (old), 13 KiB (new), 0 bytes (No change)

Configuration mdpi

APK file size: 38 KiB (old), 38 KiB (new), 0 bytes (No change)
APK download size (estimated): 13 KiB (old), 13 KiB (new), 0 bytes (No change)

Configuration tvdpi

APK file size: 73 KiB (old), 73 KiB (new), 0 bytes (No change)
APK download size (estimated): 27 KiB (old), 27 KiB (new), 0 bytes (No change)

Configuration xhdpi

APK file size: 50 KiB (old), 50 KiB (new), 0 bytes (No change)
APK download size (estimated): 20 KiB (old), 20 KiB (new), 0 bytes (No change)

Configuration xxhdpi

APK file size: 55 KiB (old), 55 KiB (new), 0 bytes (No change)
APK download size (estimated): 28 KiB (old), 28 KiB (new), 0 bytes (No change)

Configuration xxxhdpi

APK file size: 55 KiB (old), 55 KiB (new), 0 bytes (No change)
APK download size (estimated): 27 KiB (old), 27 KiB (new), 0 bytes (No change)

Beta

Expand to see flavor specifics

Universal APK

APK file size: 11 MiB (old), 11 MiB (new), 35 KiB (Added)

APK download size (estimated): 10 MiB (old), 10 MiB (new), 31 KiB (Added)

Method count: 115828 (old), 116017 (new), 189 (Added)

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

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

Resources: 5798 (old), 5841 (new), 43 (Added)

  • Anim: 33 (old), 33 (new), 0 (No change)
  • Animator: 24 (old), 24 (new), 0 (No change)
  • Array: 14 (old), 14 (new), 0 (No change)
  • Attr: 888 (old), 888 (new), 0 (No change)
  • Bool: 8 (old), 8 (new), 0 (No change)
  • Color: 820 (old), 826 (new), 6 (Added):
    • color/color_def_charcoal (added)
    • color/color_def_ivory (added)
    • color/color_palette_profile_selection_background_color (added)
    • color/component_color_profile_icon_stroke_color (added)
    • color/component_color_profile_selection_background_color (added)
    • And 1 other
  • Dimen: 780 (old), 798 (new), 18 (Added):
    • dimen/profile_item_profile_icon_size (added)
    • dimen/profile_item_profile_picture_stroke_width (added)
    • dimen/profile_selection_fragment_add_button_margin_bottom (added)
    • dimen/profile_selection_fragment_add_profile_button_margin_end (added)
    • dimen/profile_selection_fragment_header_margin (added)
    • And 13 others
  • Drawable: 342 (old), 345 (new), 3 (Added):
    • drawable/ic_add (added)
    • drawable/ic_chevron_left (added)
    • drawable/ic_chevron_right (added)
  • Id: 1231 (old), 1242 (new), 11 (Added):
    • id/add_profile_button (added)
    • id/add_profile_prompt (added)
    • id/profile_avatar (added)
    • id/profile_item_container (added)
    • id/profile_list_scroll_left (added)
    • And 6 others
  • Integer: 32 (old), 32 (new), 0 (No change)
  • Interpolator: 11 (old), 11 (new), 0 (No change)
  • Layout: 343 (old), 345 (new), 2 (Added):
    • layout/profile_item (added)
    • layout/profile_selection_fragment (added)
  • 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: 786 (old), 789 (new), 3 (Added):
    • string/learn (removed)
    • string/study (removed)
    • string/lessons (added)
    • string/profile_selection_add_profile_text (added)
    • string/profile_selection_header (added)
    • And 2 others
  • Style: 473 (old), 473 (new), 0 (No change)
  • 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: 10 MiB (old), 11 MiB (new), 34 KiB (Added)
APK download size (estimated): 9 MiB (old), 10 MiB (new), 27 KiB (Added)
Method count: 115828 (old), 116017 (new), 189 (Added)
Resources: 5755 (old), 5798 (new), 43 (Added)

  • Color: 820 (old), 826 (new), 6 (Added)
  • Dimen: 778 (old), 796 (new), 18 (Added)
  • Drawable: 302 (old), 305 (new), 3 (Added)
  • Id: 1231 (old), 1242 (new), 11 (Added)
  • Layout: 343 (old), 345 (new), 2 (Added)
  • String: 786 (old), 789 (new), 3 (Added)

Configuration hdpi

APK file size: 43 KiB (old), 43 KiB (new), 0 bytes (No change)
APK download size (estimated): 17 KiB (old), 17 KiB (new), 0 bytes (No change)

Configuration ldpi

APK file size: 44 KiB (old), 44 KiB (new), 0 bytes (No change)
APK download size (estimated): 13 KiB (old), 13 KiB (new), 0 bytes (No change)

Configuration mdpi

APK file size: 38 KiB (old), 38 KiB (new), 0 bytes (No change)
APK download size (estimated): 13 KiB (old), 13 KiB (new), 0 bytes (No change)

Configuration tvdpi

APK file size: 73 KiB (old), 73 KiB (new), 0 bytes (No change)
APK download size (estimated): 27 KiB (old), 27 KiB (new), 0 bytes (No change)

Configuration xhdpi

APK file size: 50 KiB (old), 50 KiB (new), 0 bytes (No change)
APK download size (estimated): 20 KiB (old), 20 KiB (new), 0 bytes (No change)

Configuration xxhdpi

APK file size: 55 KiB (old), 55 KiB (new), 0 bytes (No change)
APK download size (estimated): 28 KiB (old), 28 KiB (new), 0 bytes (No change)

Configuration xxxhdpi

APK file size: 55 KiB (old), 55 KiB (new), 0 bytes (No change)
APK download size (estimated): 27 KiB (old), 27 KiB (new), 0 bytes (No change)

Ga

Expand to see flavor specifics

Universal APK

APK file size: 11 MiB (old), 11 MiB (new), 35 KiB (Added)

APK download size (estimated): 10 MiB (old), 10 MiB (new), 31 KiB (Added)

Method count: 115828 (old), 116017 (new), 189 (Added)

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

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

Resources: 5798 (old), 5841 (new), 43 (Added)

  • Anim: 33 (old), 33 (new), 0 (No change)
  • Animator: 24 (old), 24 (new), 0 (No change)
  • Array: 14 (old), 14 (new), 0 (No change)
  • Attr: 888 (old), 888 (new), 0 (No change)
  • Bool: 8 (old), 8 (new), 0 (No change)
  • Color: 820 (old), 826 (new), 6 (Added):
    • color/color_def_charcoal (added)
    • color/color_def_ivory (added)
    • color/color_palette_profile_selection_background_color (added)
    • color/component_color_profile_icon_stroke_color (added)
    • color/component_color_profile_selection_background_color (added)
    • And 1 other
  • Dimen: 780 (old), 798 (new), 18 (Added):
    • dimen/profile_item_profile_icon_size (added)
    • dimen/profile_item_profile_picture_stroke_width (added)
    • dimen/profile_selection_fragment_add_button_margin_bottom (added)
    • dimen/profile_selection_fragment_add_profile_button_margin_end (added)
    • dimen/profile_selection_fragment_header_margin (added)
    • And 13 others
  • Drawable: 342 (old), 345 (new), 3 (Added):
    • drawable/ic_add (added)
    • drawable/ic_chevron_left (added)
    • drawable/ic_chevron_right (added)
  • Id: 1231 (old), 1242 (new), 11 (Added):
    • id/add_profile_button (added)
    • id/add_profile_prompt (added)
    • id/profile_avatar (added)
    • id/profile_item_container (added)
    • id/profile_list_scroll_left (added)
    • And 6 others
  • Integer: 32 (old), 32 (new), 0 (No change)
  • Interpolator: 11 (old), 11 (new), 0 (No change)
  • Layout: 343 (old), 345 (new), 2 (Added):
    • layout/profile_item (added)
    • layout/profile_selection_fragment (added)
  • 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: 786 (old), 789 (new), 3 (Added):
    • string/learn (removed)
    • string/study (removed)
    • string/lessons (added)
    • string/profile_selection_add_profile_text (added)
    • string/profile_selection_header (added)
    • And 2 others
  • Style: 473 (old), 473 (new), 0 (No change)
  • 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: 10 MiB (old), 11 MiB (new), 34 KiB (Added)
APK download size (estimated): 9 MiB (old), 10 MiB (new), 27 KiB (Added)
Method count: 115828 (old), 116017 (new), 189 (Added)
Resources: 5755 (old), 5798 (new), 43 (Added)

  • Color: 820 (old), 826 (new), 6 (Added)
  • Dimen: 778 (old), 796 (new), 18 (Added)
  • Drawable: 302 (old), 305 (new), 3 (Added)
  • Id: 1231 (old), 1242 (new), 11 (Added)
  • Layout: 343 (old), 345 (new), 2 (Added)
  • String: 786 (old), 789 (new), 3 (Added)

Configuration hdpi

APK file size: 43 KiB (old), 43 KiB (new), 0 bytes (No change)
APK download size (estimated): 17 KiB (old), 17 KiB (new), 0 bytes (No change)

Configuration ldpi

APK file size: 44 KiB (old), 44 KiB (new), 0 bytes (No change)
APK download size (estimated): 13 KiB (old), 13 KiB (new), 0 bytes (No change)

Configuration mdpi

APK file size: 38 KiB (old), 38 KiB (new), 0 bytes (No change)
APK download size (estimated): 13 KiB (old), 13 KiB (new), 0 bytes (No change)

Configuration tvdpi

APK file size: 73 KiB (old), 73 KiB (new), 0 bytes (No change)
APK download size (estimated): 27 KiB (old), 27 KiB (new), 0 bytes (No change)

Configuration xhdpi

APK file size: 50 KiB (old), 50 KiB (new), 0 bytes (No change)
APK download size (estimated): 20 KiB (old), 20 KiB (new), 0 bytes (No change)

Configuration xxhdpi

APK file size: 55 KiB (old), 55 KiB (new), 0 bytes (No change)
APK download size (estimated): 28 KiB (old), 28 KiB (new), 0 bytes (No change)

Configuration xxxhdpi

APK file size: 55 KiB (old), 55 KiB (new), 0 bytes (No change)
APK download size (estimated): 27 KiB (old), 27 KiB (new), 0 bytes (No change)

Copy link
Member

@BenHenning BenHenning left a comment

Choose a reason for hiding this comment

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

@BenHenning, PTAL.

I have addressed all pending comments, and update the screenshots in the main PR body. I should be able to upload talkback video tomorrow -- currently facing some physical device issues.

Thanks @adhiamboperes! Took a pass on the new code and left some comments. Just to check, did you address all of my 3 points in the main review message above (quoted from 2 reviews ago)? I did a scan on the images changed in the main PR post, but they don't seem different in any noticeable way and it seems like the original concerns may still be present (minus perhaps Talkback but I don't yet see a video for that to review).


@Test
@Config(qualifiers = "land")
fun testFragment_enableOnboardingV2_rtl_checkRightArrowScrollBehaviourIscorrect() {
Copy link
Member

Choose a reason for hiding this comment

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

Are this & the one above actually verifying RTL? Only testFragment_enableOnboardingV2_rtl_checkListIsAlphabetical seems to be enabling RTL explicity.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

I refactored this test to use the Arabic locale.


launch(ProfileChooserActivity::class.java).use {
it.onActivity { activity ->
activity.window.decorView.layoutDirection = ViewCompat.LAYOUT_DIRECTION_RTL
Copy link
Member

Choose a reason for hiding this comment

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

Does this actually cause the activity to relayout into RTL?

An alternative that might work is switching the language to Arabic since that should force RTL as well, I think.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

I refactored tests to use the Arabic locale, thanks for the suggestion!


@Test
@Config(qualifiers = "land")
fun testFragment_enableOnboardingV2_rtl_checkLeftArrowScrollBehaviourIscorrect() {
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
fun testFragment_enableOnboardingV2_rtl_checkLeftArrowScrollBehaviourIscorrect() {
fun testFragment_enableOnboardingV2_rtl_checkLeftArrowScrollBehaviourIsCorrect() {

Ditto above. Though perhaps we can be more specific than 'correct'?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

I updated name to testFragment_enableOnboardingV2_rtl_checkLeftArrowScrollsListToTheRight, ditto for similar tests.

)
)

testCoroutineDispatchers.runCurrent()
Copy link
Member

Choose a reason for hiding this comment

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

Why is this needed? Can't the test just end?

Ditto below.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

It is not required. I have removed it everywhere.

recyclerViewId = R.id.profiles_list_landscape,
position = 0,
targetViewId = R.id.profile_name_text,
itemMatcher = allOf(withText("Admin"), isDisplayed())
Copy link
Member

Choose a reason for hiding this comment

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

This doesn't technically verify that it's alphabetical, just that admin is first. Do we already verify elsewhere the whole list is populated correctly?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

I have refactored the test to verify the position of all the created profiles.

@@ -100,7 +100,8 @@
android:layout_width="@dimen/profile_selection_fragment_icon_size"
android:layout_height="@dimen/profile_selection_fragment_icon_size"
android:layout_marginEnd="@dimen/profile_selection_fragment_add_profile_button_margin_end"
android:contentDescription="@string/profile_selection_profile_icon_description"
android:layout_marginBottom="@dimen/profile_selection_fragment_add_button_margin_bottom"
android:contentDescription="@string/profile_selection_profile_icon_description"
Copy link
Member

Choose a reason for hiding this comment

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

Nit: please remove extra indentation here.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Done

* Used to retrieve the layout direction that should be used to mirror the direction of the
* list based on locale.
*/
@Inject lateinit var resourceHandler: AppLanguageResourceHandler
Copy link
Member

Choose a reason for hiding this comment

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

Since this class is a presenter, this can be injected directly via the class's constructor.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Refactored.

@@ -1225,7 +1226,7 @@ class ProfileManagementController @Inject constructor(
// TODO(#3616): Migrate to the proper SDK 29+ APIs.
@Suppress("DEPRECATION") // The code is correct for targeted versions of Android.
val bitmap = MediaStore.Images.Media.getBitmap(context.contentResolver, avatarImagePath)
val fileName = avatarImagePath.pathSegments.last()
val fileName = UUID.randomUUID().toString()
Copy link
Member

Choose a reason for hiding this comment

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

Are you able to document what you've tried and what hasn't worked in a new issue that we could file to track this? While I'm fine with postponing adding a test for this now, it will eventually become a requirement as we work in the long-term toward 100% code coverage. It'd be nice to capture your efforts so that they don't need to be redone in the future.

Comment on lines 173 to 174
val offset =
if (isLeft) scrollDistance - scrollableWidth else scrollableWidth - scrollDistance
Copy link
Member

Choose a reason for hiding this comment

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

Sorry, I don't think that quite answers my question. The video seems to start with the list of profiles scrolled in the middle, so it's unclear which side of the list the user begins on. Is it the right or left when in RTL?

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: 19 MiB (old), 19 MiB (new), 43 KiB (Added)

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

Method count: 260321 (old), 260615 (new), 294 (Added)

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

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

Resources: 6830 (old), 6887 (new), 57 (Added)

  • Anim: 43 (old), 43 (new), 0 (No change)
  • Animator: 26 (old), 26 (new), 0 (No change)
  • Array: 15 (old), 15 (new), 0 (No change)
  • Attr: 922 (old), 922 (new), 0 (No change)
  • Bool: 9 (old), 9 (new), 0 (No change)
  • Color: 967 (old), 975 (new), 8 (Added):
    • color/color_def_charcoal (added)
    • color/color_def_ivory (added)
    • color/color_palette_profile_selection_background_color (added)
    • color/color_palette_profile_selection_profile_icon_background_color (added)
    • color/component_color_profile_icon_stroke_color (added)
    • And 3 others
  • Dimen: 1048 (old), 1071 (new), 23 (Added):
    • dimen/profile_item_profile_icon_size (added)
    • dimen/profile_item_profile_picture_stroke_width (added)
    • dimen/profile_selection_activity_profile_icon_size (added)
    • dimen/profile_selection_fragment_add_button_margin_bottom (added)
    • dimen/profile_selection_fragment_add_profile_button_margin_end (added)
    • And 18 others
  • Drawable: 380 (old), 383 (new), 3 (Added):
    • drawable/ic_add (added)
    • drawable/ic_chevron_left (added)
    • drawable/ic_chevron_right (added)
  • Id: 1285 (old), 1297 (new), 12 (Added):
    • id/add_profile_button (added)
    • id/add_profile_prompt (added)
    • id/profile_avatar (added)
    • id/profile_item_container (added)
    • id/profile_list_scroll_left (added)
    • And 7 others
  • Integer: 37 (old), 37 (new), 0 (No change)
  • Interpolator: 11 (old), 11 (new), 0 (No change)
  • Layout: 380 (old), 382 (new), 2 (Added):
    • layout/profile_item (added)
    • layout/profile_selection_fragment (added)
  • Menu: 3 (old), 3 (new), 0 (No change)
  • 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: 853 (old), 858 (new), 5 (Added):
    • string/profile_selection_add_icon_description (added)
    • string/profile_selection_add_profile_text (added)
    • string/profile_selection_admin_label (added)
    • string/profile_selection_header (added)
    • string/profile_selection_profile_icon_description (added)
  • Style: 832 (old), 836 (new), 4 (Added):
    • style/AddProfilePromptStyle (added)
    • style/AdministratorControlsLabelStyle (added)
    • style/AdministratorLabelStyle (added)
    • style/ProfileSelectionHeaderStyle (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: 18 MiB (old), 18 MiB (new), 42 KiB (Added)
APK download size (estimated): 17 MiB (old), 17 MiB (new), 34 KiB (Added)
Method count: 260321 (old), 260615 (new), 294 (Added)
Resources: 6780 (old), 6837 (new), 57 (Added)

  • Color: 967 (old), 975 (new), 8 (Added)
  • Dimen: 1044 (old), 1067 (new), 23 (Added)
  • Drawable: 335 (old), 338 (new), 3 (Added)
  • Id: 1285 (old), 1297 (new), 12 (Added)
  • Layout: 380 (old), 382 (new), 2 (Added)
  • String: 853 (old), 858 (new), 5 (Added)
  • Style: 832 (old), 836 (new), 4 (Added)

Configuration hdpi

APK file size: 50 KiB (old), 50 KiB (new), 60 bytes (Added)
APK download size (estimated): 18 KiB (old), 18 KiB (new), 5 bytes (Added)

Configuration ldpi

APK file size: 49 KiB (old), 49 KiB (new), 48 bytes (Added)
APK download size (estimated): 14 KiB (old), 14 KiB (new), 0 bytes (No change)

Configuration mdpi

APK file size: 45 KiB (old), 45 KiB (new), 48 bytes (Added)
APK download size (estimated): 14 KiB (old), 14 KiB (new), 1 bytes (Added)

Configuration tvdpi

APK file size: 86 KiB (old), 86 KiB (new), 84 bytes (Added)
APK download size (estimated): 29 KiB (old), 29 KiB (new), 0 bytes (No change)

Configuration xhdpi

APK file size: 57 KiB (old), 57 KiB (new), 60 bytes (Added)
APK download size (estimated): 21 KiB (old), 21 KiB (new), 1 bytes (Removed)

Configuration xxhdpi

APK file size: 63 KiB (old), 63 KiB (new), 72 bytes (Added)
APK download size (estimated): 29 KiB (old), 29 KiB (new), 7 bytes (Added)

Configuration xxxhdpi

APK file size: 63 KiB (old), 63 KiB (new), 84 bytes (Added)
APK download size (estimated): 28 KiB (old), 28 KiB (new), 2 bytes (Added)

Alpha

Expand to see flavor specifics

Universal APK

APK file size: 11 MiB (old), 11 MiB (new), 37 KiB (Added)

APK download size (estimated): 10 MiB (old), 10 MiB (new), 26 KiB (Added)

Method count: 115840 (old), 116029 (new), 189 (Added)

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

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

Resources: 5798 (old), 5846 (new), 48 (Added)

  • Anim: 33 (old), 33 (new), 0 (No change)
  • Animator: 24 (old), 24 (new), 0 (No change)
  • Array: 14 (old), 14 (new), 0 (No change)
  • Attr: 888 (old), 888 (new), 0 (No change)
  • Bool: 8 (old), 8 (new), 0 (No change)
  • Color: 820 (old), 826 (new), 6 (Added):
    • color/color_def_charcoal (added)
    • color/color_def_ivory (added)
    • color/color_palette_profile_selection_background_color (added)
    • color/component_color_profile_icon_stroke_color (added)
    • color/component_color_profile_selection_background_color (added)
    • And 1 other
  • Dimen: 780 (old), 798 (new), 18 (Added):
    • dimen/profile_item_profile_icon_size (added)
    • dimen/profile_item_profile_picture_stroke_width (added)
    • dimen/profile_selection_fragment_add_button_margin_bottom (added)
    • dimen/profile_selection_fragment_add_profile_button_margin_end (added)
    • dimen/profile_selection_fragment_header_margin (added)
    • And 13 others
  • Drawable: 342 (old), 345 (new), 3 (Added):
    • drawable/ic_add (added)
    • drawable/ic_chevron_left (added)
    • drawable/ic_chevron_right (added)
  • Id: 1231 (old), 1243 (new), 12 (Added):
    • id/add_profile_button (added)
    • id/add_profile_prompt (added)
    • id/profile_avatar (added)
    • id/profile_item_container (added)
    • id/profile_list_scroll_left (added)
    • And 7 others
  • Integer: 32 (old), 32 (new), 0 (No change)
  • Interpolator: 11 (old), 11 (new), 0 (No change)
  • Layout: 343 (old), 345 (new), 2 (Added):
    • layout/profile_item (added)
    • layout/profile_selection_fragment (added)
  • 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: 786 (old), 789 (new), 3 (Added):
    • string/profile_selection_add_profile_text (added)
    • string/profile_selection_header (added)
    • string/profile_selection_profile_icon_description (added)
  • Style: 473 (old), 477 (new), 4 (Added):
    • style/AddProfilePromptStyle (added)
    • style/AdministratorControlsLabelStyle (added)
    • style/AdministratorLabelStyle (added)
    • style/ProfileSelectionHeaderStyle (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: 11 MiB (old), 11 MiB (new), 36 KiB (Added)
APK download size (estimated): 10 MiB (old), 10 MiB (new), 28 KiB (Added)
Method count: 115840 (old), 116029 (new), 189 (Added)
Resources: 5755 (old), 5803 (new), 48 (Added)

  • Color: 820 (old), 826 (new), 6 (Added)
  • Dimen: 778 (old), 796 (new), 18 (Added)
  • Drawable: 302 (old), 305 (new), 3 (Added)
  • Id: 1231 (old), 1243 (new), 12 (Added)
  • Layout: 343 (old), 345 (new), 2 (Added)
  • String: 786 (old), 789 (new), 3 (Added)
  • Style: 473 (old), 477 (new), 4 (Added)

Configuration hdpi

APK file size: 43 KiB (old), 43 KiB (new), 24 bytes (Added)
APK download size (estimated): 17 KiB (old), 17 KiB (new), 1 bytes (Removed)

Configuration ldpi

APK file size: 44 KiB (old), 44 KiB (new), 0 bytes (No change)
APK download size (estimated): 13 KiB (old), 13 KiB (new), 0 bytes (No change)

Configuration mdpi

APK file size: 38 KiB (old), 38 KiB (new), 0 bytes (No change)
APK download size (estimated): 13 KiB (old), 13 KiB (new), 0 bytes (No change)

Configuration tvdpi

APK file size: 73 KiB (old), 73 KiB (new), 24 bytes (Added)
APK download size (estimated): 27 KiB (old), 27 KiB (new), 4 bytes (Removed)

Configuration xhdpi

APK file size: 50 KiB (old), 50 KiB (new), 24 bytes (Added)
APK download size (estimated): 20 KiB (old), 20 KiB (new), 0 bytes (No change)

Configuration xxhdpi

APK file size: 55 KiB (old), 55 KiB (new), 24 bytes (Added)
APK download size (estimated): 28 KiB (old), 28 KiB (new), 1 bytes (Added)

Configuration xxxhdpi

APK file size: 55 KiB (old), 55 KiB (new), 24 bytes (Added)
APK download size (estimated): 27 KiB (old), 27 KiB (new), 0 bytes (No change)

Beta

Expand to see flavor specifics

Universal APK

APK file size: 11 MiB (old), 11 MiB (new), 36 KiB (Added)

APK download size (estimated): 10 MiB (old), 10 MiB (new), 31 KiB (Added)

Method count: 115846 (old), 116035 (new), 189 (Added)

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

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

Resources: 5798 (old), 5846 (new), 48 (Added)

  • Anim: 33 (old), 33 (new), 0 (No change)
  • Animator: 24 (old), 24 (new), 0 (No change)
  • Array: 14 (old), 14 (new), 0 (No change)
  • Attr: 888 (old), 888 (new), 0 (No change)
  • Bool: 8 (old), 8 (new), 0 (No change)
  • Color: 820 (old), 826 (new), 6 (Added):
    • color/color_def_charcoal (added)
    • color/color_def_ivory (added)
    • color/color_palette_profile_selection_background_color (added)
    • color/component_color_profile_icon_stroke_color (added)
    • color/component_color_profile_selection_background_color (added)
    • And 1 other
  • Dimen: 780 (old), 798 (new), 18 (Added):
    • dimen/profile_item_profile_icon_size (added)
    • dimen/profile_item_profile_picture_stroke_width (added)
    • dimen/profile_selection_fragment_add_button_margin_bottom (added)
    • dimen/profile_selection_fragment_add_profile_button_margin_end (added)
    • dimen/profile_selection_fragment_header_margin (added)
    • And 13 others
  • Drawable: 342 (old), 345 (new), 3 (Added):
    • drawable/ic_add (added)
    • drawable/ic_chevron_left (added)
    • drawable/ic_chevron_right (added)
  • Id: 1231 (old), 1243 (new), 12 (Added):
    • id/add_profile_button (added)
    • id/add_profile_prompt (added)
    • id/profile_avatar (added)
    • id/profile_item_container (added)
    • id/profile_list_scroll_left (added)
    • And 7 others
  • Integer: 32 (old), 32 (new), 0 (No change)
  • Interpolator: 11 (old), 11 (new), 0 (No change)
  • Layout: 343 (old), 345 (new), 2 (Added):
    • layout/profile_item (added)
    • layout/profile_selection_fragment (added)
  • 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: 786 (old), 789 (new), 3 (Added):
    • string/profile_selection_add_profile_text (added)
    • string/profile_selection_header (added)
    • string/profile_selection_profile_icon_description (added)
  • Style: 473 (old), 477 (new), 4 (Added):
    • style/AddProfilePromptStyle (added)
    • style/AdministratorControlsLabelStyle (added)
    • style/AdministratorLabelStyle (added)
    • style/ProfileSelectionHeaderStyle (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: 10 MiB (old), 11 MiB (new), 35 KiB (Added)
APK download size (estimated): 9 MiB (old), 10 MiB (new), 27 KiB (Added)
Method count: 115846 (old), 116035 (new), 189 (Added)
Resources: 5755 (old), 5803 (new), 48 (Added)

  • Color: 820 (old), 826 (new), 6 (Added)
  • Dimen: 778 (old), 796 (new), 18 (Added)
  • Drawable: 302 (old), 305 (new), 3 (Added)
  • Id: 1231 (old), 1243 (new), 12 (Added)
  • Layout: 343 (old), 345 (new), 2 (Added)
  • String: 786 (old), 789 (new), 3 (Added)
  • Style: 473 (old), 477 (new), 4 (Added)

Configuration hdpi

APK file size: 43 KiB (old), 43 KiB (new), 24 bytes (Added)
APK download size (estimated): 17 KiB (old), 17 KiB (new), 1 bytes (Removed)

Configuration ldpi

APK file size: 44 KiB (old), 44 KiB (new), 0 bytes (No change)
APK download size (estimated): 13 KiB (old), 13 KiB (new), 0 bytes (No change)

Configuration mdpi

APK file size: 38 KiB (old), 38 KiB (new), 0 bytes (No change)
APK download size (estimated): 13 KiB (old), 13 KiB (new), 0 bytes (No change)

Configuration tvdpi

APK file size: 73 KiB (old), 73 KiB (new), 24 bytes (Added)
APK download size (estimated): 27 KiB (old), 27 KiB (new), 2 bytes (Removed)

Configuration xhdpi

APK file size: 50 KiB (old), 50 KiB (new), 24 bytes (Added)
APK download size (estimated): 20 KiB (old), 20 KiB (new), 2 bytes (Added)

Configuration xxhdpi

APK file size: 55 KiB (old), 55 KiB (new), 24 bytes (Added)
APK download size (estimated): 28 KiB (old), 28 KiB (new), 2 bytes (Added)

Configuration xxxhdpi

APK file size: 55 KiB (old), 55 KiB (new), 24 bytes (Added)
APK download size (estimated): 27 KiB (old), 27 KiB (new), 1 bytes (Added)

Ga

Expand to see flavor specifics

Universal APK

APK file size: 11 MiB (old), 11 MiB (new), 36 KiB (Added)

APK download size (estimated): 10 MiB (old), 10 MiB (new), 31 KiB (Added)

Method count: 115846 (old), 116035 (new), 189 (Added)

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

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

Resources: 5798 (old), 5846 (new), 48 (Added)

  • Anim: 33 (old), 33 (new), 0 (No change)
  • Animator: 24 (old), 24 (new), 0 (No change)
  • Array: 14 (old), 14 (new), 0 (No change)
  • Attr: 888 (old), 888 (new), 0 (No change)
  • Bool: 8 (old), 8 (new), 0 (No change)
  • Color: 820 (old), 826 (new), 6 (Added):
    • color/color_def_charcoal (added)
    • color/color_def_ivory (added)
    • color/color_palette_profile_selection_background_color (added)
    • color/component_color_profile_icon_stroke_color (added)
    • color/component_color_profile_selection_background_color (added)
    • And 1 other
  • Dimen: 780 (old), 798 (new), 18 (Added):
    • dimen/profile_item_profile_icon_size (added)
    • dimen/profile_item_profile_picture_stroke_width (added)
    • dimen/profile_selection_fragment_add_button_margin_bottom (added)
    • dimen/profile_selection_fragment_add_profile_button_margin_end (added)
    • dimen/profile_selection_fragment_header_margin (added)
    • And 13 others
  • Drawable: 342 (old), 345 (new), 3 (Added):
    • drawable/ic_add (added)
    • drawable/ic_chevron_left (added)
    • drawable/ic_chevron_right (added)
  • Id: 1231 (old), 1243 (new), 12 (Added):
    • id/add_profile_button (added)
    • id/add_profile_prompt (added)
    • id/profile_avatar (added)
    • id/profile_item_container (added)
    • id/profile_list_scroll_left (added)
    • And 7 others
  • Integer: 32 (old), 32 (new), 0 (No change)
  • Interpolator: 11 (old), 11 (new), 0 (No change)
  • Layout: 343 (old), 345 (new), 2 (Added):
    • layout/profile_item (added)
    • layout/profile_selection_fragment (added)
  • 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: 786 (old), 789 (new), 3 (Added):
    • string/profile_selection_add_profile_text (added)
    • string/profile_selection_header (added)
    • string/profile_selection_profile_icon_description (added)
  • Style: 473 (old), 477 (new), 4 (Added):
    • style/AddProfilePromptStyle (added)
    • style/AdministratorControlsLabelStyle (added)
    • style/AdministratorLabelStyle (added)
    • style/ProfileSelectionHeaderStyle (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: 10 MiB (old), 11 MiB (new), 35 KiB (Added)
APK download size (estimated): 9 MiB (old), 10 MiB (new), 26 KiB (Added)
Method count: 115846 (old), 116035 (new), 189 (Added)
Resources: 5755 (old), 5803 (new), 48 (Added)

  • Color: 820 (old), 826 (new), 6 (Added)
  • Dimen: 778 (old), 796 (new), 18 (Added)
  • Drawable: 302 (old), 305 (new), 3 (Added)
  • Id: 1231 (old), 1243 (new), 12 (Added)
  • Layout: 343 (old), 345 (new), 2 (Added)
  • String: 786 (old), 789 (new), 3 (Added)
  • Style: 473 (old), 477 (new), 4 (Added)

Configuration hdpi

APK file size: 43 KiB (old), 43 KiB (new), 24 bytes (Added)
APK download size (estimated): 17 KiB (old), 17 KiB (new), 1 bytes (Removed)

Configuration ldpi

APK file size: 44 KiB (old), 44 KiB (new), 0 bytes (No change)
APK download size (estimated): 13 KiB (old), 13 KiB (new), 0 bytes (No change)

Configuration mdpi

APK file size: 38 KiB (old), 38 KiB (new), 0 bytes (No change)
APK download size (estimated): 13 KiB (old), 13 KiB (new), 0 bytes (No change)

Configuration tvdpi

APK file size: 73 KiB (old), 73 KiB (new), 24 bytes (Added)
APK download size (estimated): 27 KiB (old), 27 KiB (new), 3 bytes (Removed)

Configuration xhdpi

APK file size: 50 KiB (old), 50 KiB (new), 24 bytes (Added)
APK download size (estimated): 20 KiB (old), 20 KiB (new), 1 bytes (Added)

Configuration xxhdpi

APK file size: 55 KiB (old), 55 KiB (new), 24 bytes (Added)
APK download size (estimated): 28 KiB (old), 28 KiB (new), 2 bytes (Added)

Configuration xxxhdpi

APK file size: 55 KiB (old), 55 KiB (new), 24 bytes (Added)
APK download size (estimated): 27 KiB (old), 27 KiB (new), 0 bytes (No change)

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.

Creating multiple user not working with profile pic
4 participants