Skip to content

Custom modal not displayed before requesting location permission #91331

@Julesssss

Description

@Julesssss

Problem

Google Play rejected our latest release for missing Prominent Disclosure on BACKGROUND_LOCATION. Our custom disclosure modal used to render before the OS permission prompt, but it now no longer fires in the canAskAgain === false branch of the GPS distance flow.

In BackgroundLocationPermissionsFlow/index.android.tsx and index.ios.tsx, once foreground or background location has been denied with "don't ask again", checkPermissions() calls onDeny() immediately without rendering any modal. Returning users — and Google reviewers retrying — therefore see nothing before being routed away.

Parent issue: https://github.com/Expensify/Expensify/issues/639340

Solution

Render the disclosure modal before onDeny() in the bypass branches on both Android and iOS, so the user always sees a custom disclosure (with appropriate "open device settings" CTA when canAskAgain is false) before the flow proceeds.

Metadata

Metadata

Assignees

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions