Skip to content

chore(runway): cherry-pick fix: Resolve fine location max sdk to app version's sdk - cp-7.72.0#28385

Merged
chloeYue merged 1 commit into
release/7.72.0from
runway-cherry-pick-7.72.0-1775233832
Apr 3, 2026
Merged

chore(runway): cherry-pick fix: Resolve fine location max sdk to app version's sdk - cp-7.72.0#28385
chloeYue merged 1 commit into
release/7.72.0from
runway-cherry-pick-7.72.0-1775233832

Conversation

@runway-github

@runway-github runway-github Bot commented Apr 3, 2026

Copy link
Copy Markdown
Contributor

Description

This PR attempts to resolve the Android APK upload error for Playstore
where it complains about duplicate ACCESS_FINE_LOCATION declarations
(WRT to the bluetooth library)

Changelog

CHANGELOG entry:

Related issues

Fixes:

Manual testing steps

Feature: my feature name

  Scenario: user [verb for user action]
    Given [describe expected initial app state]

    When user [verb for user action]
    Then [describe expected outcome]

Screenshots/Recordings

Before

After

Pre-merge author checklist

Pre-merge reviewer checklist

  • I've manually tested the PR (e.g. pull and build branch, run the
    app, test code being changed).
  • I confirm that this PR addresses all acceptance criteria described
    in the ticket it closes and includes the necessary testing evidence such
    as recordings and or screenshots.

Note

Low Risk
Low risk manifest-only change; adjusts permission merge behavior to
satisfy Play Store validation, with limited runtime impact beyond how
the permission is declared/merged.

Overview
Resolves a Play Store upload failure caused by duplicate
ACCESS_FINE_LOCATION declarations when merging manifests (e.g., from
react-native-ble-plx).

Updates AndroidManifest.xml to explicitly tools:replace the
android:maxSdkVersion attribute on ACCESS_FINE_LOCATION, ensuring a
single consistent declaration for Android < 12 Bluetooth-related
location usage.

Written by Cursor
Bugbot
for commit
ecb94e2. This will update automatically
on new commits. Configure
here.

[6baff38](https://github.com/MetaMask/metamask-mobile/commit/6baff383498618d10bb17f35ac0a505f3f8269ab)

…version's sdk - cp-7.72.0 (#28384)

<!--
Please submit this PR as a draft initially.
Do not mark it as "Ready for review" until the template has been
completely filled out, and PR status checks have passed at least once.
-->

## **Description**

<!--
Write a short description of the changes included in this pull request,
also include relevant motivation and context. Have in mind the following
questions:
1. What is the reason for the change?
2. What is the improvement/solution?
-->

This PR attempts to resolve the Android APK upload error for Playstore
where it complains about duplicate ACCESS_FINE_LOCATION declarations
(WRT to the bluetooth library)

## **Changelog**

<!--
If this PR is not End-User-Facing and should not show up in the
CHANGELOG, you can choose to either:
1. Write `CHANGELOG entry: null`
2. Label with `no-changelog`

If this PR is End-User-Facing, please write a short User-Facing
description in the past tense like:
`CHANGELOG entry: Added a new tab for users to see their NFTs`
`CHANGELOG entry: Fixed a bug that was causing some NFTs to flicker`

(This helps the Release Engineer do their job more quickly and
accurately)
-->

CHANGELOG entry:

## **Related issues**

Fixes:

## **Manual testing steps**

```gherkin
Feature: my feature name

  Scenario: user [verb for user action]
    Given [describe expected initial app state]

    When user [verb for user action]
    Then [describe expected outcome]
```

## **Screenshots/Recordings**

<!-- If applicable, add screenshots and/or recordings to visualize the
before and after of your change. -->

### **Before**

<!-- [screenshots/recordings] -->

### **After**

<!-- [screenshots/recordings] -->

## **Pre-merge author checklist**

- [ ] I've followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile
Coding
Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md).
- [ ] I've completed the PR template to the best of my ability
- [ ] I've included tests if applicable
- [ ] I've documented my code using [JSDoc](https://jsdoc.app/) format
if applicable
- [ ] I've applied the right labels on the PR (see [labeling
guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)).
Not required for external contributors.

## **Pre-merge reviewer checklist**

- [ ] I've manually tested the PR (e.g. pull and build branch, run the
app, test code being changed).
- [ ] I confirm that this PR addresses all acceptance criteria described
in the ticket it closes and includes the necessary testing evidence such
as recordings and or screenshots.

<!-- CURSOR_SUMMARY -->
---

> [!NOTE]
> **Low Risk**
> Low risk manifest-only change; adjusts permission merge behavior to
satisfy Play Store validation, with limited runtime impact beyond how
the permission is declared/merged.
> 
> **Overview**
> Resolves a Play Store upload failure caused by duplicate
`ACCESS_FINE_LOCATION` declarations when merging manifests (e.g., from
`react-native-ble-plx`).
> 
> Updates `AndroidManifest.xml` to explicitly `tools:replace` the
`android:maxSdkVersion` attribute on `ACCESS_FINE_LOCATION`, ensuring a
single consistent declaration for Android < 12 Bluetooth-related
location usage.
> 
> <sup>Written by [Cursor
Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit
ecb94e2. This will update automatically
on new commits. Configure
[here](https://cursor.com/dashboard?tab=bugbot).</sup>
<!-- /CURSOR_SUMMARY -->
@github-actions

github-actions Bot commented Apr 3, 2026

Copy link
Copy Markdown
Contributor

CLA Signature Action: All authors have signed the CLA. You may need to manually re-run the blocking PR check if it doesn't pass in a few minutes.

@metamaskbot metamaskbot added the team-bots Bot team (for MetaMask Bot, Runway Bot, etc.) label Apr 3, 2026
@github-actions github-actions Bot added the risk-low Low testing needed · Low bug introduction risk label Apr 3, 2026
@github-actions

github-actions Bot commented Apr 3, 2026

Copy link
Copy Markdown
Contributor

🔍 Smart E2E Test Selection

  • Selected E2E tags: None (no tests recommended)
  • Selected Performance tags: None (no tests recommended)
  • Risk Level: low
  • AI Confidence: 97%
click to see 🤖 AI reasoning details

E2E Test Selection:
The change to AndroidManifest.xml is a minimal build configuration fix that adds tools:replace="android:maxSdkVersion" to the ACCESS_FINE_LOCATION permission declaration. This resolves a manifest merge conflict with the react-native-ble-plx library (which declares the same permission without a maxSdkVersion), preventing a Google Play Store build rejection due to duplicate maxSdkVersion attributes for the same permission.

Key observations:

  1. No behavioral change: The actual permission scope is identical — ACCESS_FINE_LOCATION remains restricted to Android SDK ≤ 30 (Android 11 and below).
  2. Build-only fix: The tools:replace directive is a manifest merge tool instruction that only affects the Android build process, not runtime behavior.
  3. No user-facing impact: No UI, navigation, controller, or feature logic is modified.
  4. Android-specific: This is an Android manifest file; iOS is unaffected.
  5. No E2E test flows affected: No test flows involve manifest permissions directly — permissions are handled at the OS level and are not tested via Detox E2E tests.

Since this is purely a build tooling fix with no functional impact on the app, no E2E test tags need to be run.

Performance Test Selection:
This is a manifest merge fix with no impact on app runtime behavior, rendering, data loading, or any performance-sensitive code paths. No performance tests are needed.

View GitHub Actions results

@sonarqubecloud

sonarqubecloud Bot commented Apr 3, 2026

Copy link
Copy Markdown

@chloeYue chloeYue left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

LGTM

@chloeYue chloeYue merged commit 007fd2a into release/7.72.0 Apr 3, 2026
58 checks passed
@chloeYue chloeYue deleted the runway-cherry-pick-7.72.0-1775233832 branch April 3, 2026 17:06
@github-actions github-actions Bot locked and limited conversation to collaborators Apr 3, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

risk-low Low testing needed · Low bug introduction risk size-XS team-bots Bot team (for MetaMask Bot, Runway Bot, etc.)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants