🚀 OShin New CI Build!
feat(SystemUI): Use Float for indicator settings
This commit updates the SystemUI hardware indicator to use values for settings that were previously integers. This change allows for more precise configurations, particularly for settings that are managed by slider components in the UI.
The affected preferences now correctly retrieve floating-point numbers instead of integers from .
### Key Changes:
- :
- The update interval settings for the power and temperature indicators (, ) are now read as values.
- The data sources for CPU temperature and frequency (, ) are also now retrieved as values to align with UI sliders.
- The corresponding and functions have been updated to accept parameters, which are then converted to integers for file path construction.
🔗 查看本次提交
feat(SystemUI): Use Float for indicator settings
This commit updates the SystemUI hardware indicator to use values for settings that were previously integers. This change allows for more precise configurations, particularly for settings that are managed by slider components in the UI.
The affected preferences now correctly retrieve floating-point numbers instead of integers from .
### Key Changes:
- :
- The update interval settings for the power and temperature indicators (, ) are now read as values.
- The data sources for CPU temperature and frequency (, ) are also now retrieved as values to align with UI sliders.
- The corresponding and functions have been updated to accept parameters, which are then converted to integers for file path construction.
🔗 查看本次提交
GitHub
feat(SystemUI): Use Float for indicator settings · suqi8/OShin@1c9ea12
This commit updates the SystemUI hardware indicator to use `Float` values for settings that were previously integers. This change allows for more precise configurations, particularly for settings t...
🚀 OShin New CI Build!
feat(Features): Add new pages for several system apps
This commit introduces new feature pages for several system applications, extending the declarative UI model to cover more customization options. The new pages are for Quick Search Box, App Detail, Mi Health, and Speech Assistant.
### Key Changes:
- New Feature Pages:
- : Adds a page for with a toggle to remove app recommendation ads.
- : Creates a page for with multiple toggles to disable recommendations, various popups, and version/security checks.
- : Adds a page for with a toggle to enable alarm reminders.
- : Implements a page for with an option to force-enable Xiaobu call functionality.
- Feature Registry ():
- The new , , , and page definitions have been registered.
- Corresponding items have been added to the main list, making these new feature pages discoverable and accessible in the UI.
- Code Cleanup:
- Removed commented-out, non-functional code from the feature definition file for better code clarity.
🔗 查看本次提交
feat(Features): Add new pages for several system apps
This commit introduces new feature pages for several system applications, extending the declarative UI model to cover more customization options. The new pages are for Quick Search Box, App Detail, Mi Health, and Speech Assistant.
### Key Changes:
- New Feature Pages:
- : Adds a page for with a toggle to remove app recommendation ads.
- : Creates a page for with multiple toggles to disable recommendations, various popups, and version/security checks.
- : Adds a page for with a toggle to enable alarm reminders.
- : Implements a page for with an option to force-enable Xiaobu call functionality.
- Feature Registry ():
- The new , , , and page definitions have been registered.
- Corresponding items have been added to the main list, making these new feature pages discoverable and accessible in the UI.
- Code Cleanup:
- Removed commented-out, non-functional code from the feature definition file for better code clarity.
🔗 查看本次提交
GitHub
feat(Features): Add new pages for several system apps · suqi8/OShin@55a82a3
This commit introduces new feature pages for several system applications, extending the declarative UI model to cover more customization options. The new pages are for "Quick Search Box&am...
重构已完成。由于部分配置类型已更新,可能导致闪退、Hook 失效等问题。建议卸载后重新安装应用。如遇异常,请立即反馈。
Refactoring completed. Some configuration types have been updated, which may cause crashes or Hook failures. It is recommended to uninstall and reinstall the app. Please report any issues immediately.
Рефакторинг завершён. Некоторые типы конфигураций были обновлены, что может вызвать сбои или неработающие хуки. Рекомендуется удалить и заново установить приложение. При возникновении проблем сообщите об этом немедленно.
Refactoring completed. Some configuration types have been updated, which may cause crashes or Hook failures. It is recommended to uninstall and reinstall the app. Please report any issues immediately.
Рефакторинг завершён. Некоторые типы конфигураций были обновлены, что может вызвать сбои или неработающие хуки. Рекомендуется удалить и заново установить приложение. При возникновении проблем сообщите об этом немедленно.
OShin | O神「自动构建 CI Build」 pinned «重构已完成。由于部分配置类型已更新,可能导致闪退、Hook 失效等问题。建议卸载后重新安装应用。如遇异常,请立即反馈。 Refactoring completed. Some configuration types have been updated, which may cause crashes or Hook failures. It is recommended to uninstall and reinstall the app. Please report any issues immediately.…»
🚀 OShin New CI Build!
feat(Features): Add multiple new Oplus feature pages
This commit introduces a significant number of new feature pages for various Oplus system applications, built using the declarative UI model. These additions provide granular control over features in Games, Phone Manager, Battery, OTA, and more.
### Key Changes:
- New Feature Pages Added:
- Games ():
- Adds toggles for Ultra Combo, cloud control, package restrictions, and root detection bypass.
- Includes options to enable AI assists for various games like HOK and PUBG.
- Oplus Phone Manager ():
- Introduces settings to remove popup delays, customize the optimization score, set custom prompt text, and adjust animation durations.
- Battery ():
- Adds a toggle to disable the low battery fluid cloud notification.
- Includes a slider to configure the maximum number of auto-starting apps.
- OTA ():
- Provides toggles to disable system update dialogs, notifications, auto-downloads, and integrity checks.
- Notification Manager ():
- Adds a toggle to allow disabling all notification categories for an app.
- Pad Connect ():
- Adds an option to bypass the safety check for unlocking with the same account.
- Extended System Service ():
- Includes a toggle to remove the system tamper warning.
- Feature Registry ():
- All new page definitions (, , , , etc.) have been registered, making them accessible in the app's module list.
- String Resources ():
- Added all necessary string resources for the new feature toggles and descriptions.
- Clarified the text for the PUBG AI feature toggle.
🔗 查看本次提交
feat(Features): Add multiple new Oplus feature pages
This commit introduces a significant number of new feature pages for various Oplus system applications, built using the declarative UI model. These additions provide granular control over features in Games, Phone Manager, Battery, OTA, and more.
### Key Changes:
- New Feature Pages Added:
- Games ():
- Adds toggles for Ultra Combo, cloud control, package restrictions, and root detection bypass.
- Includes options to enable AI assists for various games like HOK and PUBG.
- Oplus Phone Manager ():
- Introduces settings to remove popup delays, customize the optimization score, set custom prompt text, and adjust animation durations.
- Battery ():
- Adds a toggle to disable the low battery fluid cloud notification.
- Includes a slider to configure the maximum number of auto-starting apps.
- OTA ():
- Provides toggles to disable system update dialogs, notifications, auto-downloads, and integrity checks.
- Notification Manager ():
- Adds a toggle to allow disabling all notification categories for an app.
- Pad Connect ():
- Adds an option to bypass the safety check for unlocking with the same account.
- Extended System Service ():
- Includes a toggle to remove the system tamper warning.
- Feature Registry ():
- All new page definitions (, , , , etc.) have been registered, making them accessible in the app's module list.
- String Resources ():
- Added all necessary string resources for the new feature toggles and descriptions.
- Clarified the text for the PUBG AI feature toggle.
🔗 查看本次提交
GitHub
feat(Features): Add multiple new Oplus feature pages · suqi8/OShin@d438aca
This commit introduces a significant number of new feature pages for various Oplus system applications, built using the declarative UI model. These additions provide granular control over features ...
🚀 OShin New CI Build!
chore(Cleanup): Remove unused string resources
This commit removes a large number of unused string resources from the project's string definition files () across multiple locales.
The primary goal of this cleanup is to reduce the application's size and simplify localization maintenance by eliminating obsolete text that is no longer referenced in the codebase. This is likely a result of recent refactoring efforts where hardcoded feature pages were replaced with a declarative UI model.
### Key Changes:
- Massive String Deletion:
- Removed over 200 string resources that were previously used for various feature toggles, settings, descriptions, and UI labels. These include strings related to specific device features, UI customizations, and warnings.
- The cleanup has been applied consistently across all supported language files, including , , (default), , and the meme locale ().
- Examples of Removed Strings:
- A vast collection of feature flags (e.g., , , ).
- UI-specific labels (e.g., , , , ).
- General warnings and messages (e.g., , ).
This change streamlines the resource files, making the project cleaner and more maintainable.
🔗 查看本次提交
chore(Cleanup): Remove unused string resources
This commit removes a large number of unused string resources from the project's string definition files () across multiple locales.
The primary goal of this cleanup is to reduce the application's size and simplify localization maintenance by eliminating obsolete text that is no longer referenced in the codebase. This is likely a result of recent refactoring efforts where hardcoded feature pages were replaced with a declarative UI model.
### Key Changes:
- Massive String Deletion:
- Removed over 200 string resources that were previously used for various feature toggles, settings, descriptions, and UI labels. These include strings related to specific device features, UI customizations, and warnings.
- The cleanup has been applied consistently across all supported language files, including , , (default), , and the meme locale ().
- Examples of Removed Strings:
- A vast collection of feature flags (e.g., , , ).
- UI-specific labels (e.g., , , , ).
- General warnings and messages (e.g., , ).
This change streamlines the resource files, making the project cleaner and more maintainable.
🔗 查看本次提交
GitHub
chore(Cleanup): Remove unused string resources · suqi8/OShin@00efac2
This commit removes a large number of unused string resources from the project's string definition files (`strings.xml`) across multiple locales.
The primary goal of this cleanup is to red...
The primary goal of this cleanup is to red...
🚀 OShin New CI Build!
Refactor: Reorganize hook packages for clarity
This commit refactors the package structure for all hook-related files, improving organization and code discoverability. Hooks are now grouped by their target application's functionality rather than being nested under a generic package.
For example, a hook targeting is now located in instead of .
### Key Changes:
- Package Renaming:
- All hook implementation files have been moved from to more descriptive packages like , , , etc.
- This change affects dozens of files, standardizing their location based on the app they modify (e.g., , , , , ).
- Import Path Updates:
- The main file has been updated to reflect the new package paths for all registered hookers.
- Internal imports within the hook files have also been updated to their new locations.
- Hook Relocation:
- The hook file for was deleted from its old path () and recreated at the correct new path (), aligning it with the new package structure.
This is a structural refactoring only and introduces no functional changes.
🔗 查看本次提交
Refactor: Reorganize hook packages for clarity
This commit refactors the package structure for all hook-related files, improving organization and code discoverability. Hooks are now grouped by their target application's functionality rather than being nested under a generic package.
For example, a hook targeting is now located in instead of .
### Key Changes:
- Package Renaming:
- All hook implementation files have been moved from to more descriptive packages like , , , etc.
- This change affects dozens of files, standardizing their location based on the app they modify (e.g., , , , , ).
- Import Path Updates:
- The main file has been updated to reflect the new package paths for all registered hookers.
- Internal imports within the hook files have also been updated to their new locations.
- Hook Relocation:
- The hook file for was deleted from its old path () and recreated at the correct new path (), aligning it with the new package structure.
This is a structural refactoring only and introduces no functional changes.
🔗 查看本次提交
GitHub
Refactor: Reorganize hook packages for clarity · suqi8/OShin@e57f07b
This commit refactors the package structure for all hook-related files, improving organization and code discoverability. Hooks are now grouped by their target application's functionality ra...
🚀 OShin New CI Build!
Refactor(CodeStyle): Relocate About screen files to a dedicated package
This commit reorganizes the project structure by moving all files related to the About screen from the generic package to a more specific package.
This change improves code organization and aligns with package-by-feature best practices, making the About section's components easier to locate and maintain.
Key Changes:
File Relocation:
All composable screens and related logic for the About section (, , , , and ) have been moved from to .
Import Updates:
Import statements in and have been updated to reflect the new package paths, ensuring that navigation and screen composition continue to function correctly.
🔗 查看本次提交
Refactor(CodeStyle): Relocate About screen files to a dedicated package
This commit reorganizes the project structure by moving all files related to the About screen from the generic package to a more specific package.
This change improves code organization and aligns with package-by-feature best practices, making the About section's components easier to locate and maintain.
Key Changes:
File Relocation:
All composable screens and related logic for the About section (, , , , and ) have been moved from to .
Import Updates:
Import statements in and have been updated to reflect the new package paths, ensuring that navigation and screen composition continue to function correctly.
🔗 查看本次提交
GitHub
Refactor(CodeStyle): Relocate "About" screen files to a dedicated pac… · suqi8/OShin@329acd2
…kage
This commit reorganizes the project structure by moving all files related to the "About" screen from the generic `ui.activity.about` package to a more specific `ui.about` p...
This commit reorganizes the project structure by moving all files related to the "About" screen from the generic `ui.activity.about` package to a more specific `ui.about` p...
🚀 OShin New CI Build!
Refactor(Hook): Update PhoneManager hooks to use KavaRef and float types
This commit refactors the hooks for and to align with updated API practices and improve type precision.
The manual method finding syntax () has been replaced with the more concise from the KavaRef library. Additionally, preference values for custom score and custom animation duration are now correctly handled as types instead of , allowing for more precise configurations.
### Key Changes:
- API Modernization:
- Replaced the verbose block with for locating and hooking methods, simplifying the codebase.
- Removed now-unused imports for , , , and .
- Type Correction ( & ):
- The preferences for and are now fetched using instead of .
- The default/sentinel value has been changed from to to match the new float type.
- The custom score value passed to the hooked method is now a .
🔗 查看本次提交
Refactor(Hook): Update PhoneManager hooks to use KavaRef and float types
This commit refactors the hooks for and to align with updated API practices and improve type precision.
The manual method finding syntax () has been replaced with the more concise from the KavaRef library. Additionally, preference values for custom score and custom animation duration are now correctly handled as types instead of , allowing for more precise configurations.
### Key Changes:
- API Modernization:
- Replaced the verbose block with for locating and hooking methods, simplifying the codebase.
- Removed now-unused imports for , , , and .
- Type Correction ( & ):
- The preferences for and are now fetched using instead of .
- The default/sentinel value has been changed from to to match the new float type.
- The custom score value passed to the hooked method is now a .
🔗 查看本次提交
GitHub
Refactor(Hook): Update PhoneManager hooks to use KavaRef and float types · suqi8/OShin@d4ffbdd
This commit refactors the hooks for `com.oplus.phonemanager` and `com.coloros.phonemanager` to align with updated API practices and improve type precision.
The manual method finding syntax (`metho...
The manual method finding syntax (`metho...
🚀 OShin New CI Build!
Chore: Add MMKV as a new dependency
This commit introduces as a new dependency to the project.
MMKV is a high-performance, key-value storage framework. Adding it to the project lays the groundwork for its future use, likely for managing application settings or caching data more efficiently than traditional methods like SharedPreferences.
### Key Changes:
:
Added the library with version to the version catalog.
:
Included the new dependency in the app module's implementation configuration.
🔗 查看本次提交
Chore: Add MMKV as a new dependency
This commit introduces as a new dependency to the project.
MMKV is a high-performance, key-value storage framework. Adding it to the project lays the groundwork for its future use, likely for managing application settings or caching data more efficiently than traditional methods like SharedPreferences.
### Key Changes:
:
Added the library with version to the version catalog.
:
Included the new dependency in the app module's implementation configuration.
🔗 查看本次提交
GitHub
Chore: Add MMKV as a new dependency · suqi8/OShin@c378a78
This commit introduces `com.tencent:mmkv` as a new dependency to the project.
MMKV is a high-performance, key-value storage framework. Adding it to the project lays the groundwork for its future u...
MMKV is a high-performance, key-value storage framework. Adding it to the project lays the groundwork for its future u...
❤3
🚀 OShin New CI Build!
feat(Hook): Add DexKitCacheManager for persistent method caching
This commit introduces , a new utility to persistently cache DexKit search results using MMKV, significantly speeding up hook initialization on subsequent app launches.
The manager implements a cache-then-search strategy. It stores method descriptors found by DexKit and invalidates this cache only when the host application's version code changes. This avoids costly and time-consuming dex rescans for every process start, greatly improving performance.
### Key Changes:
:
Introduced a new singleton object, , to handle the entire caching lifecycle.
Uses MMKV for persistent, multi-process storage of method descriptors.
Caches results on a per-app-version basis, automatically clearing outdated caches when an application is updated.
Hooks into the application's lifecycle to initialize MMKV and DexKit resources in a timely manner.
Employs a to ensure that hook execution waits for the cache manager to be fully initialized, preventing race conditions.
:
Added a call to in the 's method to ensure MMKV is initialized for the main app process.
🔗 查看本次提交
feat(Hook): Add DexKitCacheManager for persistent method caching
This commit introduces , a new utility to persistently cache DexKit search results using MMKV, significantly speeding up hook initialization on subsequent app launches.
The manager implements a cache-then-search strategy. It stores method descriptors found by DexKit and invalidates this cache only when the host application's version code changes. This avoids costly and time-consuming dex rescans for every process start, greatly improving performance.
### Key Changes:
:
Introduced a new singleton object, , to handle the entire caching lifecycle.
Uses MMKV for persistent, multi-process storage of method descriptors.
Caches results on a per-app-version basis, automatically clearing outdated caches when an application is updated.
Hooks into the application's lifecycle to initialize MMKV and DexKit resources in a timely manner.
Employs a to ensure that hook execution waits for the cache manager to be fully initialized, preventing race conditions.
:
Added a call to in the 's method to ensure MMKV is initialized for the main app process.
🔗 查看本次提交
GitHub
feat(Hook): Add DexKitCacheManager for persistent method caching · suqi8/OShin@e51335c
This commit introduces `DexKitCacheManager`, a new utility to persistently cache DexKit search results using MMKV, significantly speeding up hook initialization on subsequent app launches.
The man...
The man...
🚀 **OShin New CI Build!**
Chore(CI): Remove unused parameters from Telegram notification step
This commit cleans up the GitHub Actions workflow by removing two deprecated or unused parameters from the Telegram notification step.
The and parameters are no longer necessary for the and have been removed to simplify the workflow configuration.
🔗 [查看本次提交](https://github.com/suqi8/OShin/commit/3b8b5394b9299b03811e90cc96e879b3b767e9be)
Chore(CI): Remove unused parameters from Telegram notification step
This commit cleans up the GitHub Actions workflow by removing two deprecated or unused parameters from the Telegram notification step.
The and parameters are no longer necessary for the and have been removed to simplify the workflow configuration.
🔗 [查看本次提交](https://github.com/suqi8/OShin/commit/3b8b5394b9299b03811e90cc96e879b3b767e9be)
GitHub
Chore(CI): Remove unused parameters from Telegram notification step · suqi8/OShin@3b8b539
This commit cleans up the `android.yml` GitHub Actions workflow by removing two deprecated or unused parameters from the Telegram notification step.
The `debug: true` and `format: markdown` parame...
The `debug: true` and `format: markdown` parame...