refactor: remove legacy BlackBox app shell

This commit is contained in:
Mahdi Karzari
2026-07-20 04:25:09 +03:30
parent 165c014d75
commit bf5f73e07a
154 changed files with 217 additions and 7140 deletions
+2 -2
View File
@@ -1,6 +1,6 @@
# NewBlackbox baseline
# FridaBox build baseline
- Foundation: `ALEX5402/NewBlackbox`, branch `main`
- Virtual runtime foundation revision: `89b59836c66f173756a4ae258cf379a957649820`
- Required commit: `89b59836c66f173756a4ae258cf379a957649820`
- Working branch: `feature/fridabox-mvp`
- Baseline date: 2026-07-19
+27 -2
View File
@@ -55,8 +55,8 @@ baseline build investigation are recorded in `docs/BASELINE.md`.
Runtime validation passed on a Samsung SM-S928B running ARM64 Android 16/API 36:
- latest host APK installed successfully;
- the sample installed only in BlackBox and was absent from Android user 0's
real PackageManager;
- the sample installed only in the FridaBox private workspace and was absent
from Android user 0's real PackageManager;
- Gadget paused startup before `SampleApplication.attachBaseContext` and
`onCreate`;
- the controller mapped port 27042 to the sample package/process and reported
@@ -119,3 +119,28 @@ Artifacts:
The release artifact was intentionally unsigned because no production keystore
was supplied. `apksigner` confirmed the debug APK verifies and the release APK
does not contain a debug signature.
## Legacy shell removal validation
Validation date: 2026-07-20
The obsolete launcher, GMS/Xposed/fake-location screens, legacy resources,
Chinese launcher translations, bundled UI AARs, and old product documentation
were removed. The application namespace and all host-owned source moved to
`com.qm4rs.fridabox`; only the runtime engine's compatibility API remains under
its upstream package namespace, with attribution retained in
`THIRD_PARTY_NOTICES.md`.
The cleanup passed app/Bcore unit tests, debug and release assembly, and the
complete app lint/check task. On the connected Samsung SM-S928B (ARM64,
Android 16/API 36), the new APK installed successfully, resumed
`com.qm4rs.fridabox/.FridaBoxActivity`, restored both private guests, and launched
`com.paeezanstudio.pesarkhande` in Clean mode through `ProxyActivity$P0` without
a fatal exception.
Final cleanup artifacts:
- debug: 19,795,788 bytes, SHA-256
`3fabf2887b3bf1aa1a83475b18803755168b33b2111e89f15d3d1434d89994a5`;
- release: 12,454,018 bytes, SHA-256
`b7e9033def3fbe25f92686ceb3a3e2f623951e8d7fdd450b172d30df25e08e8e`.
+46
View File
@@ -265,3 +265,49 @@ BUILD SUCCESSFUL
- release APK: 13266764 bytes, SHA-256 caa2218194fcbe91c10d0d29a74b7401aaed53f340b8a0d6668321ddae48ddfb
- debug signature verification: passed
- release signature verification: intentionally unsigned; no debug key fallback
=== FridaBox-only application shell cleanup (2026-07-20) ===
> adb devices -l
R5CY149SZEX device product:e3qxxx model:SM_S928B device:e3q transport_id:1
> adb shell getprop ro.product.cpu.abi
arm64-v8a
> adb shell getprop ro.build.version.release
16
> adb shell getprop ro.build.version.sdk
36
> $env:FRIDABOX_NDK_PROJECT_DIR='D:\FridaBoxBuild\Bcore'; .\gradlew.bat :app:assembleDebug :Bcore:testDebugUnitTest :app:testDebugUnitTest --console=plain '-Dkotlin.compiler.execution.strategy=in-process'
BUILD SUCCESSFUL in 46s
> $env:FRIDABOX_NDK_PROJECT_DIR='D:\FridaBoxBuild\Bcore'; .\gradlew.bat :app:assembleRelease :app:check --console=plain '-Dkotlin.compiler.execution.strategy=in-process'
BUILD SUCCESSFUL in 2m 13s
> adb install -r -t D:\Android Codes\FridaBox\app\build\outputs\apk\debug\FridaBox_4.0.0_arm64-v8a-debug.apk
Performing Streamed Install
Success
> adb shell monkey -p com.qm4rs.fridabox -c android.intent.category.LAUNCHER 1
Events injected: 1
> adb shell dumpsys activity activities
topResumedActivity=ActivityRecord{61631798 u0 com.qm4rs.fridabox/.FridaBoxActivity t2830}
The UI hierarchy identified the host package as `com.qm4rs.fridabox`, displayed
the FridaBox product identity, and restored two private guests. The imported game
was switched to Clean mode and launched from its card.
> adb shell dumpsys activity activities
topResumedActivity=ActivityRecord{234428585 u0 com.qm4rs.fridabox/top.niunaijun.blackbox.proxy.ProxyActivity$P0 t2831}
No `FATAL EXCEPTION` or `AndroidRuntime` crash was emitted. The compatibility
activity class above belongs to the retained runtime engine; the host launcher,
application, namespace, source tree, and resources are FridaBox-owned.
Final cleanup artifacts:
- debug APK: 19795788 bytes, SHA-256 3fabf2887b3bf1aa1a83475b18803755168b33b2111e89f15d3d1434d89994a5
- release APK: 12454018 bytes, SHA-256 b7e9033def3fbe25f92686ceb3a3e2f623951e8d7fdd450b172d30df25e08e8e