Skip to content

Show app UID and shared-UID siblings, add uid: search filter (#229)#642

Closed
kasnder wants to merge 2 commits into
masterfrom
claude/uid-visibility-229
Closed

Show app UID and shared-UID siblings, add uid: search filter (#229)#642
kasnder wants to merge 2 commits into
masterfrom
claude/uid-visibility-229

Conversation

@kasnder

@kasnder kasnder commented Jul 12, 2026

Copy link
Copy Markdown
Member

Summary

Closes #229.

Android apps can share a UID (e.g. via android:sharedUserId, or when the
system assigns the same UID to multiple packages). TrackerControl's
blocking is applied per-UID, so a setting change for one app silently
affects its shared-UID siblings — several users found this surprising,
and one commenter specifically asked for visibility into this without
adding UI clutter or new toggles.

This PR adds minimal, unobtrusive visibility into UID sharing:

  • Details screen (DetailsActivity): shows the app's UID under the
    toolbar, and — only if other installed packages share that UID — a
    second line "Shares app ID with: ..." listing them, using
    PackageManager.getPackagesForUid.
  • App-list search (AdapterRule's Filter): supports a uid:<number>
    query to filter the list down to every app sharing a given UID, so users
    can go find the siblings mentioned in the details screen. Existing
    free-text/UID search behavior is unchanged.
  • New strings (app_uid, app_uid_shared_with) added to the base
    English strings.xml only, per the project's translation workflow.

No new settings/toggles were added, keeping the UI as simple as before.

Test plan

  • ./gradlew :app:compileGithubDebugJavaWithJavac passes.
  • Manual/screenshot verification needed: open an app's details
    screen and confirm the UID line appears (and the "shares app ID
    with" line appears for an app that has a shared-UID sibling, e.g.
    two apps from the same vendor using android:sharedUserId).
  • Manual/screenshot verification needed: in the main app list,
    search uid:<uid> for a known UID and confirm only apps with that
    UID are shown.

🤖 Generated with Claude Code

kasnder and others added 2 commits July 12, 2026 10:18
Apps sharing a UID are controlled together by the VPN (blocking is
per-UID), so changing a setting for one app silently affects its
shared-UID siblings. Surface this instead of hiding it:

- Details screen now shows the app's UID and, if other installed
  packages share it, their names ("Shares app ID with: ...").
- App-list search supports "uid:<number>" to find every app sharing
  a given UID.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

@kasnder kasnder left a comment

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Reviewed the UID display, shared-package lookup, uid: filter behavior, layout integration, and surrounding details/search code. I found no actionable correctness issue. :app:compileGithubDebugJavaWithJavac succeeds, and the branch is clean.

@kasnder kasnder closed this Jul 12, 2026
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.

Android groups applications on UID

1 participant