This version focuses on compatibility issues, bug fixes, and QOL changes.
Note
This update introduces a change in how settings are stored. Downgrading after updating will result in the loss of all app-specific settings. Please remember to reinstall the second LiveContainer to prevent data conflict.
Additionally, some apps may display a black screen and crash after 10 seconds in v3.2.0. Please refer to the "Black Screen Fix" section below for more details.
New Features
Black Screen Fix
The Black Screen Fix is no longer applied automatically to prevent loading UIKit.framework
before the app’s main executable is opened, which could cause symbol binding issues. You can enable it in Long press app -> Settings -> enable Fix Black Screen
App Group Isolation
You can now isolate app groups for different containers, allowing multiple accounts (e.g., in SideStore) to be signed in within separate containers. You can find files inside app group in container folder -> LCAppGroup
You can enable this feature by: Long press app -> Settings -> (Container name) -> enable Isolate App Group
Fix #279
Open URL Automatically
You can now automatically open an URL in current app without being prompted.
Implement #285
Ignore Error During dlopen
This fixes errors like dlsym(xxxx, xxxx)
caused by app's initializers calling dlsym with a non-existing symbol
Fix issues like #124
Better App Signature Check
The team ID used in app signing is now considered when determining if an app needs re-signing. This allows apps to be re-signed if they are transferred between LiveContainers installed by different Apple IDs.
JIT-Less Mode Diagnose Page & LiveContainer Help
A new JIT-Less Mode Diagnose Page helps new users quickly identify configuration issues. Problematic items are highlighted in red for easy troubleshooting.
You can see this page in Settings -> JIT-Less Mode Diagnose.
You can see LiveContainer help in Apps -> ? Button
Bug Fixes & Compatibility
Separate App-Specific Settings from Info.plist
App-Specific Settings is now saved in a different file to prevent app from crashing due to reading it.
Fix #277
Hook dlsym(RTLD_MAIN_ONLY,xxx)
Redirect this call to the app's main executable instead of LiveContainer's to prevent issues.
Don't Link against UIKit.framework
This solution is provided by khanhduytran0
UIKit.framework
is now not linked by LiveContainer's main executable to prevent symbol binding issues. However this will prevent the black screen fix to be automatically applied.
App Hiding Without Device Password
App hiding now works even if the device doesn’t have a password set.
Fix #281
(Regression) Fix 2 Bugs in NSUserDefaultsHook in 3.1.0
Fix long press actions of last guest app remain
Fix #235
Fix Apps Unable to Open Their Own URL Schemes
Fix #44
Resolve Crash Loop with Blank Info.plist
Handles cases where Info.plist
is blank due to app corruption, which previously crashes LiveContainerSwiftUI.
Fix #293
Fix CallKit Unable to Initialize
Fix #258
Fix Crash when Patching Store
The cause of this issue is that LiveContainer cannot access App Group due to incorrect setup.