OShin | O神「自动构建 CI Build」
1.5K subscribers
2 photos
771 files
678 links
OPPO/OneOlus 系统辅助应用

Channel/频道
@OPatchA
Chat/聊天
@OPatchB
Download Telegram
🚀 **OShin New CI Build!**

Feat(OTA): Add Force Show Local Install option

This commit introduces a new feature to the OTA (Over-The-Air) update module that forces the Local Install option to be visible in the system update settings.

This is achieved by hooking the method. When the system checks for the key, the hook intercepts the call and returns , effectively tricking the system into believing developer options are enabled, which in turn reveals the Local Install button.

### Key Changes:

* ** (Hook):**
* Added a new hook for .
* It spoofs the return value for the setting to .
* Cleaned up preference access by creating a local variable.

* ** (UI):**
* Added a new Force show local install to the OTA features screen.

* **:**
* Added the corresponding string resource for the new feature's title.
🔗 [查看本次提交](https://github.com/suqi8/OShin/commit/5f1122b5bed62de14058b7ec6dea135f5474dce1)
2
从此条消息开始,将仅支持安卓16系统
😭52👏11🤯5😁2
🚀 **OShin New CI Build!**

Refactor(CorePatch): Migrate PackageManager hooks to YukiHookAPI

This commit refactors the entire CorePatch module, which modifies the Android . The previous implementation, based on legacy Xposed API and spread across multiple version-specific Java files (, , , , , ), has been completely removed.

It is replaced by a single, modern hooker written in Kotlin using the YukiHookAPI. This new implementation is cleaner, more maintainable, and uses the library for safer reflection.

The functionality remains largely the same, but has been reorganized and given clearer naming conventions for preferences and UI elements.

### Key Changes:

* **Migration to YukiHookAPI:**
* All hooks are now consolidated into .
* Legacy Xposed API calls (, ) are replaced with YukiHookAPI's fluent DSL.
* Removed multiple Java files (, , ) in favor of a single Kotlin file.

* **Feature Reorganization & Renaming:**
* The user-facing settings in the UI have been regrouped into General, Verification Bypass, and Advanced sections.
* Preference keys and string resources have been updated to be more descriptive (e.g., is now ).

* **Code Improvements:**
* Implemented hooks for common package management bypasses, such as allowing downgrades, signature mismatches, and disabling various integrity checks (, , ).
* Added a debug command to inspect package and shared user signing details.
* The hook is now loaded cleanly via the main entry point.

* **Build Configuration:**
* The has been updated from 35 to 36 in to align with the new target API.
* The legacy Xposed entry point in for has been removed.
🔗 [查看本次提交](https://github.com/suqi8/OShin/commit/11b2c4ff358d735ae9cb5510c0c3b6340ab025f3)
👏1
🚀 **OShin New CI Build!**

fix(StatusBar): 修复指标容器添加位置错误,兼容包裹层结构变化

- 新增 clockWrapper 层级解析,防止 clockTextView 直接父级不是最终容器导致布局错位
- 调整容器插入逻辑,优先在 clockWrapper 之后插入,找不到则使用备用添加方案
- 优化资源清理与容器重建流程,防止重复附加或视图泄漏
🔗 [查看本次提交](https://github.com/suqi8/OShin/commit/0bc5e23d9591529223f4c4133344854938f78b08)
🚀 **OShin New CI Build!**

feat(weather): 新增天气应用去除二级页面广告功能

- 新增 hook.weather 包与 RemoveAds.kt 实现广告屏蔽逻辑
- 新增 features.weather 页面定义与对应开关项
- 在 HookEntry 中启用 weather hook
- 在 FeatureRegistry 注册 weather 模块
- 在 strings.xml 添加 “移除二级页面广告” 文本资源
- 在 array.xml 中添加 com.coloros.weather2 以启用天气模块
🔗 [查看本次提交](https://github.com/suqi8/OShin/commit/390390e110f3319ee30d4f74606d288af5b7fcb9)
🚀 **OShin New CI Build!**

feat(weather): 优化 RemoveAds 逻辑以确保彻底屏蔽二级页面广告

- 在 SecondaryPageUtil.newLink 中新增对 &isNotificationGranted= 的替换逻辑
- 在 LocalUtils.getH5StringBuffer 中确保插入 infoEnable=false 参数并追加 frontCode=2.0
- 修复部分页面未正确附加 infoEnable=false 导致广告残留的问题
🔗 [查看本次提交](https://github.com/suqi8/OShin/commit/74336f3f8455069ac56c2d7e6590ddd8baf444e4)
1
🚀 **OShin New CI Build!**

feat(weather): 移除二级页面广告 & 禁止跳转系统浏览器

- Hook ,根据设置修改 URL 移除广告
并可根据偏好重定向到外部浏览器。
- Hook ,同样修改 H5 URL
并独立处理浏览器跳转。
- 两个功能可单独开启或关闭。
🔗 [查看本次提交](https://github.com/suqi8/OShin/commit/65a75fe6ee418ce0ceb6b14ac44c9db95f346179)
🚀 **OShin New CI Build!**

Refactor(PMS): Change default values and add debug command

This commit refactors the PackageManagerServices hook and introduces a new debug command.

The default values for all existing hook preferences have been changed from to . This makes the features opt-in rather than opt-out, preventing unintended system modifications upon module installation. The affected hooks include allow downgrade, disable JAR verifier, allow signature mismatch, and others.

A new optional feature has been added to enable a debugging command via . When enabled, the command becomes available, allowing developers to inspect package and shared user signing information. The command is wrapped in a preference check and its implementation has been moved inside the function.

### Key Changes:

* **:**
* Changed the default value for all feature preferences from to .
* Moved the instance variable to be local within .
* Wrapped the logic in a new preference check for .
* Renamed the ADB command from to for clarity.

* ** (UI):**
* Added a new in the UI to enable or disable the feature.

* **:**
* Added new string resources for the title and a detailed summary of the new feature.
🔗 [查看本次提交](https://github.com/suqi8/OShin/commit/b0e8909cd34ded1fffccb3f7da6bf7dc106931b3)
🚀 **OShin New CI Build!**

Feat(Browser): Add options to modify weather page

This commit introduces new features for the Heytap Browser (), specifically targeting the integrated weather page.

A new hook module has been added to provide the following functionalities:
* **Remove Weather Injected Ads:** This hook targets the class and replaces a method responsible for injecting JavaScript-based ads, effectively disabling them.
* **Remove Weather Search Box:** This hook finds the method responsible for initializing the title bar, waits for it to execute, and then sets the visibility of the search bar layout to , hiding it from view.

### Key Changes:

* **:**
* Added a new hook for the package.
* Implemented a dynamic hook using DexKit to find and nullify the ad-injection method.
* Implemented another dynamic hook to find and hide the search bar .

* **:**
* Created a new UI definition for the Browser section.
* Added two switches for the new features.

* **:**
* Added new string resources for the feature titles.

* **Project Integration:**
* Registered the new browser hook and feature module in and .
* Added related links on the weather features page to direct users to these new browser options.
🔗 [查看本次提交](https://github.com/suqi8/OShin/commit/c57c91c1e05cf98d762001f4ff89706a7276088a)
🚀 **OShin New CI Build!**

Refactor(i18n): Revise and enhance string resources

This commit refactors the string resources for English (en), Russian (ru), and a meme locale (b+qaa+x+meme).

The changes focus on improving clarity, correcting grammatical errors, and adopting a more consistent and user-friendly tone across the application. Many technical terms have been simplified, and summaries for various features have been rewritten to be more descriptive and easier to understand.

### Key Changes:
* **Wording and Tone:** Updated numerous strings to be more natural and descriptive in all three languages.
* **Consistency:** Ensured consistent terminology for related features (e.g., Floating Window instead of Small Window).
* **Clarity:** Improved summaries for complex features to better explain their purpose and potential risks.
* **Additions:** Introduced many new strings to support recently added features, covering areas like status bar indicators, accessibility services, and advanced package manager options.
* **Corrections:** Fixed typos and grammatical mistakes.
* **Meme Locale:** Significantly enhanced the meme language file with more humorous and exaggerated phrasing.
🔗 [查看本次提交](https://github.com/suqi8/OShin/commit/cc6f18cadd6de4d791fe67a0119cbaa4b4ee1483)
🚀 **OShin New CI Build!**

Refactor(SystemUI): Overhaul Network Speed Indicator feature

This commit completely refactors the Network Speed Indicator feature for the SystemUI, overhauling both the user interface and the underlying hook logic for greater customizability and stability.

### UI Changes (, , ):
* The feature page has been reorganized into categorized cards for Basic Settings, Font Size, Display Control, and Advanced Settings.
* Added an option to use the system default font.
* Introduced a text alignment option (Left, Center, Right) for the network speed indicator.
* Added several new options for the Separate Up/Down style:
* Hide from the unit (e.g., → ).
* Use an uppercase B for Byte instead of b for bit.

### Hook Logic Changes ():
* **Complete Rewrite:** The hook logic has been rewritten for clarity, stability, and to support the new features.
* **Layout & Alignment:**
* Introduced to properly handle text alignment (left, center, right) and prevent text from being truncated.
* Dynamically adjusts the view's width based on the selected alignment.
* **Font Handling:**
* Hooks to save the original typeface.
* Adds a hook to to correctly apply custom fonts, sizes, and alignment after the system's own layout pass. This ensures settings are not overridden.
* **Code Quality:**
* The code is now heavily documented with KDoc comments explaining the purpose of each function, state variable, and hook.
* Refactored the byte formatting logic () to be more robust and handle new unit display options.
* Replaced and with modern YukiHookAPI and reflection resolvers for better readability and performance.
🔗 [查看本次提交](https://github.com/suqi8/OShin/commit/002dea13d26397d9b45476ac91f0e01add5fcae3)