Conversation
…tatus communication - Remove HookBroadcastReceiver and its broadcast-based communication - Add HookStatusProvider as a content provider for secure cross-process communication - Add HookNotifier utility class to handle content provider interactions - Update Constants to reflect new method names (SET_HOOKED, INCREMENT_LAUNCH_COUNT) - Update AndroidManifest.xml to register the content provider instead of broadcast receiver - Update VolumeKeyControlModuleHandlers to use HookNotifier instead of direct broadcasts
- Replace ContentProvider-based hook status tracking with system properties and remote preferences for more reliable detection - Add BootReceiver to handle BOOT_COMPLETED events and track boot state - Implement BootViewModel and BootRepository to manage boot completion state - Add StatusSysPropsHelper for system property-based status tracking - Use RemotePreferences for cross-process preference access - Refactor package structure: move viewmodels to dedicated package - Add loading states and better error handling in SettingsActivity - Add LSPosedLogger for better debugging - Update dependencies to include RemotePreferences library Key changes: - Module status now persists across reboots using system properties - More reliable detection of whether module is active - Better handling of boot completion events - Improved user experience with loading states - Reduced dependency on ContentProvider which was less reliable
- Add utility to check if app was installed after system reboot - Update SettingsScreen to show proper module status for fresh installations - Only show loading animation and error states when settings are initialized
- Restructure module status display to handle post-reboot installation case - Show module init error when app is installed after reboot - Improve loading state handling during module initialization
**Changes:** - Added `setBootCompleted()` to persist boot time - Changed boot check to poll for hook detection (1s intervals, 60 attempts) - Only show module error when boot completed AND hook not detected - Improved boot detection logging
- Wrap RemotePrefsHelper usage in runCatching block - Prevents crashes during long-press volume key actions
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
and remote preferences for more reliable detection
Key changes: