3.4 KiB
Release Notes - NewBlackbox
Version: Latest Build (2026-01-31)
New Features
VPN Network Mode Toggle
Added a new setting to choose between VPN and normal network mode for sandboxed apps.
- Location: Settings → Others → Use VPN Network
- Default: OFF (normal network mode)
- When enabled, traffic is routed through BlackBox's VPN service
- Requires app restart to take effect
Files Changed:
app/src/main/java/top/niunaijun/blackboxa/view/main/BlackBoxLoader.ktapp/src/main/java/top/niunaijun/blackboxa/view/setting/SettingFragment.ktapp/src/main/res/xml/setting.xmlapp/src/main/res/values/strings.xmlBcore/src/main/java/top/niunaijun/blackbox/app/configuration/ClientConfiguration.javaBcore/src/main/java/top/niunaijun/blackbox/BlackBoxCore.java
Device Information Logging
Added comprehensive device info header in logcat for easier debugging:
- Android version, SDK level, security patch
- Device manufacturer, brand, model, hardware
- Supported CPU/ABIs (32-bit and 64-bit)
- Memory info (heap usage)
- App version and package info
- Build fingerprint and timestamps
Bug Fixes
VPN Permission Fix
Problem: VPN service failed to establish interface (builder.establish() returned null).
Root Cause: Android requires VpnService.prepare() to be called from an Activity before VPN can be established.
Solution: Added VPN permission request to MainActivity.kt on app launch.
Files Changed:
app/src/main/java/top/niunaijun/blackboxa/view/main/MainActivity.kt
Android 10 Black Screen Fix
Problem: Apps would show a black screen and timeout on Android 10 (API 29).
Root Cause:
BRAttributionSource.getRealClass()returnsnullon Android < 31SystemProviderStub.invoke()crashed calling.getName()on null classClassInvocationStub.injectHook()crashed whengetWho()returned null
Solution:
- Added null checks in
SystemProviderStub.javafor API version checks - Added null check in
ClassInvocationStub.javato skip hooks when services don't exist
Files Changed:
Bcore/src/main/java/top/niunaijun/blackbox/fake/service/context/providers/SystemProviderStub.javaBcore/src/main/java/top/niunaijun/blackbox/fake/hook/ClassInvocationStub.java
Removed Features
Xposed Framework Support
- Removed
BXposedManagerServiceand related AIDL interfaces - Removed "Install Xposed Module" UI and Settings entries
- Cleaned up Xposed-related flags and package checks
Stability Improvements
Anti-Detection Native Hook Stability
- Removed
LOGDcalls from critical native hooks to prevent infinite recursion - Fixed syntax errors in hook implementations
- Hooks now silently return
ENOENTfor blocked paths
Known Issues
Oppo/ColorOS Thermal Stats Error
On Oppo/ColorOS devices, you may see errors like:
OppoThermalStats: PackageManager$NameNotFoundException: top.niunaijun.blackboxa:p0
This is harmless - it's an Oppo system bug where their thermal management incorrectly uses process names (with :p0 suffix) instead of package names. The app works normally.
Compatibility
| Android Version | Status |
|---|---|
| Android 10 (Q) | ✅ Fixed |
| Android 11 (R) | ✅ Supported |
| Android 12 (S) | ✅ Supported |
| Android 13 (T) | ✅ Supported |
| Android 14 (U) | ✅ Supported |
| Android 15+ | ✅ Supported |