Skip to content

feat(patcher): add patcher and merger resource monitoring - #748

Merged
Jman-Github merged 2 commits into
devfrom
feat/patching-resource-graphs
Oct 2, 2026
Merged

Jman-Github merged 2 commits into
devfrom
feat/patching-resource-graphs

Conversation

@Jman-Github

@Jman-Github Jman-Github commented Oct 2, 2026 •

Copy link
Copy Markdown
Owner

Summary

Add CPU and storage I/O monitoring alongside the existing memory graphs for patching, batch patching, and split APK merging.

  • Sample all metrics every 500 ms, with per-core CPU readings, separate read/write rates, scrollable session history, and peak values.
  • Use swipeable graphs with animated, tappable dots on smaller screens and aligned graphs side by side on larger screens.
  • Add separate searchable compact-layout settings for the patcher and merger, including settings import/export support.
  • Keep history bars consistently sized, smooth the Latest control, and hide graphs until layout and history positioning are ready without reserving empty card space.
  • Add a collapsible merger information card with app identity, APK sizes, selected/total splits, elapsed time, runtime memory limit, Manager and ARSCLib versions, Android/device information, and available RAM/storage. App name and package are independently scrollable and copyable.
  • Add CPU sampler and telemetry parser tests.

Morphe attribution

Parts of the resource monitoring implementation are adapted from Morphe:

  • Morphe PR #849, implemented in 03fe5f5: CPU and storage I/O samplers, background resource monitoring, and telemetry decoding.
  • Morphe commit dcdce54: the sysfs idle-counter CPU sampling fallback and CPU bar animation that preserves each core’s position instead of sorting cores by load.

The port integrates these components with URV’s patcher runtimes and merger process, uses a 500 ms sampling interval, and follows URV’s existing memory-history presentation. The pager, independent compact settings, graph preparation handling, and merger information card are URV-specific adaptations.

Adapted code retains Morphe copyright notices and attribution comments linking directly to the relevant upstream files and referencing third-party/NOTICE.

Artifact

https://github.com/Jman-Github/Universal-ReVanced-Manager/actions/runs/37052442524/artifacts/11248225445

Note

PR build data and regular release data are kept separate to prevent conflicts when switching between release builds and PR artifacts. Because of this, when you install a PR artifact, your app data will appear to be reset. It’s only a clean slate for that specific PR build. Your previous data is still preserved, and once you reinstall the release build you were using before, that data will be restored.

Validation

  • git diff --check passed.
  • assembleRelease passed.
  • JVM tests passed.

@Jman-Github Jman-Github added this to the Release URV 1.9.0 milestone Oct 2, 2026
@Jman-Github Jman-Github self-assigned this Oct 2, 2026
@Jman-Github Jman-Github added the Feature Something you wish to be added label Oct 2, 2026
@Jman-Github
Jman-Github merged commit 5ca1a04 into dev Oct 2, 2026
1 check passed
@Jman-Github
Jman-Github deleted the feat/patching-resource-graphs branch October 2, 2026 19:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Feature Something you wish to be added

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant