009: publish AXPR23 final source and public documentation
This commit is contained in:
1 parent
72930e0fd6
commit
2c714d8d34
35 files changed
+2498
-403
No files matched your search
@@ -0,0 +1,62 @@
|
||||
# IntelliRAT v0.2
|
||||
|
||||
Systemless Magisk controller for automatic, reversible Android 16
|
||||
network-profile changes. It does not modify `/system`, `/system_ext`, `/vendor`,
|
||||
RIL, modem firmware or framework.
|
||||
|
||||
## Scope
|
||||
|
||||
- Backend: Android 16 `cmd phone set-allowed-network-types-for-users`.
|
||||
- Target: one slot at a time, default slot `0`.
|
||||
- HIGH: LTE + UMTS/HSPA + GSM families.
|
||||
- LOW: UMTS/HSPA + GSM families.
|
||||
- Safety: capture/restore, active-call refusal, result verification and event log.
|
||||
- No Xposed or Vector. The companion APK source is included under `app/`; the
|
||||
module zip includes it only after the AOSP app build produces
|
||||
`system/app/IntelliRAT/IntelliRAT.apk`.
|
||||
|
||||
The binary masks are derived from the LOS23/A16 `TelephonyManager` constants:
|
||||
network type bits are `1 << (NETWORK_TYPE - 1)`, with LTE CA normalized to LTE.
|
||||
They must be treated as target-build data, not a universal Qualcomm constant.
|
||||
|
||||
## Install on GOLDEN only
|
||||
|
||||
Do not install this in the production ROM or on LAB yet. Build a Magisk module
|
||||
zip with `scripts/build-intellirat-module.sh`, install it on GOLDEN with a test SIM, and keep the
|
||||
known-good ROM available. GOLDEN now detects the inserted test SIM as
|
||||
`LOADED` on `SIMon mobile`.
|
||||
|
||||
After Magisk loads the module:
|
||||
|
||||
```text
|
||||
su -g 2000 -G 2000 -c /system/bin/intellirat status 0
|
||||
su -g 2000 -G 2000 -c /system/bin/intellirat capture 0
|
||||
su -g 2000 -G 2000 -c /system/bin/intellirat --dry-run high 0
|
||||
su -g 2000 -G 2000 -c /system/bin/intellirat high 0
|
||||
su -g 2000 -G 2000 -c /system/bin/intellirat status 0
|
||||
su -g 2000 -G 2000 -c /system/bin/intellirat low 0
|
||||
su -g 2000 -G 2000 -c /system/bin/intellirat restore 0
|
||||
```
|
||||
|
||||
`capture` must be run before a transition. `restore` uses the captured user
|
||||
mask and does not guess a stock mode. `events.log` is stored under
|
||||
`/data/local/tmp/intellirat/`. The prototype uses the root-owned `shell` group
|
||||
for this small network-mask state because MagiskSU drops DAC capabilities for
|
||||
`su` commands; no credentials or private data are stored.
|
||||
|
||||
When the companion APK is present, launch **IntelliRAT** from the app drawer.
|
||||
It shows the current backend result, slot selector, automatic toggle, delay,
|
||||
foreground-package exceptions, capture/HIGH/LOW/restore buttons and a
|
||||
persistent status notification with quick actions. The automatic policy uses
|
||||
lock delay, unlock restoration and a safe call guard.
|
||||
|
||||
## Not implemented yet
|
||||
|
||||
- traffic protection
|
||||
- multi-SIM/eSIM UI and subscription discovery
|
||||
- Quick Settings tile
|
||||
|
||||
The current automatic policy is deliberately limited to Keyguard lock state, a
|
||||
configurable delay and explicit foreground-package exceptions. Wi-Fi, battery,
|
||||
traffic and multi-SIM rules remain disabled until their real device behavior is
|
||||
specified and tested with calls, IMS, SMS, data and signal loss.
|
||||
Reference in new issue
Block a user