Android app for batch traffic consumption and network speed testing with user-defined download URLs.
Current version: 1.0.4
- Add multiple links/tasks: each task has
URL + target GB. - Select links in 链接管理 and run them sequentially in priority order.
- 一键测流: in 链接管理, click
一键测流to automatically start speed testing for selected links with a temporary target of0.1GBper link.- This does not overwrite the target traffic value saved in each link.
- Each selected link starts the quick test from
0for this run. - Links without a URL will be marked as
请填写URL.
- Normal
开始still uses the target GB configured in each link. - Target traffic
0GBmeans unlimited traffic: the link keeps downloading until manually stopped or failed. - Auto stop when each finite task reaches target bytes.
- Manual stop support.
- Per-task progress, total progress, real-time speed, active thread count, and current chunk size display.
- Adjustable thread count limit for concurrent download workers.
- Optional background keep-alive while running.
- Light/dark theme switching.
The 设置 tab provides runtime tuning options:
- Fixed chunk size: set Range request chunk size in MB.
- Supports decimal values such as
0.05,0.1,0.5,1,32. - Valid range:
0.05MBto256MB.
- Supports decimal values such as
- Dynamic tuning: automatically adjusts chunk size and active thread count.
- The app first probes the target file size via
HEADorRange: bytes=0-0. - Small files, such as image URLs around
0.4MB, use KB-level chunks instead of large 32MB chunks. - Larger files gradually use larger chunks.
- The app first probes the target file size via
- Global User-Agent:
- Saved in settings and used by download/probe requests.
- Empty UA means no default Chrome UA is forced.
- Multiple UA values can be saved and selected from a dropdown.
- Per-link User-Agent:
- Each link can choose one saved UA in 链接管理.
- Empty per-link UA means the link follows the global UA.
- If both per-link UA and global UA are empty, requests use an empty UA.
Debug build:
./gradlew assembleDebugRelease build:
./gradlew assembleReleaseThe release package is signed with the project release keystore:
app/signing/networkpanelx-release.jks
alias: networkpanelx
Signing passwords should be kept only in local ignored files such as local.properties or signing-secrets.txt.
Do not commit signing passwords or keystore files to Git.
The latest signed release APK is generated at:
app/build/outputs/apk/release/app-release.apk
For the current version, a copied release artifact can also be named:
app/build/outputs/apk/release/1.0.4.apk
- Open Android Studio.
- Click
Open. - Select this folder:
E:\document\Network-Panel-X. - Wait for Gradle sync.
- Run on emulator or physical device.
- Please use URLs that you have permission to test.
- The app continuously downloads and discards data until the target is reached, or forever for unlimited tasks.
- Keep your device on power and stable network for long-running tasks.
- The
一键测流feature is intended for quick 0.1GB-per-link speed testing and will not change saved link target values.