Claiming that "frequent updates cause more trouble than they are worth" is utterly absurd. It is a textbook case of throwing the baby out with the bathwater, driven entirely by an ostrich mentality. By that logic, we ought to revert to Windows 95 and monochrome mobile phones that do little more than send SMS messages, purely because that era was deemed the most "stable". Would anyone genuinely choose to go back?
The cornerstone of modern software engineering is iterative delivery: making swift, incremental progress. If a minor deployment goes pear-shaped, the fault can be pinpointed and rolled back within five minutes. Conversely, hoarding changes for six months or a year only to release a monolithic update—crammed with tens of thousands of lines of code—means that when catastrophe strikes, even heaven wouldn’t know where the fire started. That is not stability; it is laying a collective minefield.
Furthermore, the external threat landscape shifts daily. Exploits and vulnerabilities evolve around the clock; refusing to patch frequently is effectively leaving the front door wide open for malicious actors to treat your system like a cash machine.
The dogma of "if it ain't broke, don't fix it" is pure survivorship bias, bred from sheer complacency with the flaws of legacy versions. If you refuse to refine the user experience or roll out new capabilities, you will simply watch competitors cannibalise your market share.
When frequent releases lead to instability, the fault lies squarely with inadequate automated testing and sloppy quality assurance—not the release cadence itself. Blaming update frequency makes as much sense as resolving to eat only once a month because someone choked on their dinner.
Staying confined to bed guarantees you will never trip over, but that is not vibrant health; that is a vegetative state. If your product is so "stable" that it ends up obsolete, that brand of stability is nothing more than hollow self-indulgence.
Chinese / 中文:
The cornerstone of modern software engineering is iterative delivery: making swift, incremental progress. If a minor deployment goes pear-shaped, the fault can be pinpointed and rolled back within five minutes. Conversely, hoarding changes for six months or a year only to release a monolithic update—crammed with tens of thousands of lines of code—means that when catastrophe strikes, even heaven wouldn’t know where the fire started. That is not stability; it is laying a collective minefield.
Furthermore, the external threat landscape shifts daily. Exploits and vulnerabilities evolve around the clock; refusing to patch frequently is effectively leaving the front door wide open for malicious actors to treat your system like a cash machine.
The dogma of "if it ain't broke, don't fix it" is pure survivorship bias, bred from sheer complacency with the flaws of legacy versions. If you refuse to refine the user experience or roll out new capabilities, you will simply watch competitors cannibalise your market share.
When frequent releases lead to instability, the fault lies squarely with inadequate automated testing and sloppy quality assurance—not the release cadence itself. Blaming update frequency makes as much sense as resolving to eat only once a month because someone choked on their dinner.
Staying confined to bed guarantees you will never trip over, but that is not vibrant health; that is a vegetative state. If your product is so "stable" that it ends up obsolete, that brand of stability is nothing more than hollow self-indulgence.
Chinese / 中文:
說「頻繁更新反而問題才大」,簡直是因噎廢食、鴕鳥心態到了極致。
按照這種邏輯,大家乾脆全都退回 Windows 95,手機換回只能傳簡訊的黑白機算了,畢竟那個時代「最穩定」——但捫心自問,現在有誰真願意回去?
現代軟體工程的核心共識是「小步快跑、快速迭代」。一次改動一點點,出了問題五分鐘內就能精準定位、即時回滾;反倒是憋上半年、一年才搞一次塞進幾萬行代碼的「史詩級大更新」,一旦炸開,神仙都不知道火到底從哪裡燒起來的。這根本不叫追求穩定,這叫集體埋地雷。
更何況,外部環境瞬息萬變。駭客攻擊和底層漏洞每天都在更新,不及時打補丁,等於大門敞開任人當提款機隨便刷。「能跑就別碰」純粹是習慣了舊版本缺陷的倖存者偏差,不優化體驗、不迭代功能,下場就是眼睜睜看著市場被競品吞噬殆盡。
頻繁更新會出問題,該問責的是測試機制與自動化把關沒做到位,而不是更新節奏本身。把問題怪罪到更新頻率上,荒謬程度不亞於因為怕噎著就主張人每個月只能吃一頓飯。
天天躺在床上不動確實永遠摔不了跤,但那不叫健康,那叫植物人。產品「穩定」到直接被市場淘汰出局,這種所謂的穩定,除了自我感動之外毫無意義。
👍30❤9🤔3
manager-v1.0.9-838-release.apk
6.5 MB
fix(manager): Fix the issue where storage permissions might not be obtained on Android 10
Enable requestLegacyExternalStorage and adjust the WRITE_EXTERNAL_STORAGE limit to API 29
build(deps): Update Vector core base to the latest version (core-837) and upgrade Gradle Wrapper to 9.8.0
Enable requestLegacyExternalStorage and adjust the WRITE_EXTERNAL_STORAGE limit to API 29
build(deps): Update Vector core base to the latest version (core-837) and upgrade Gradle Wrapper to 9.8.0
👍10❤3🔥1
NPatch-v1.0.9-843-release.apk
6.5 MB
fix(manager): Added warnings for missing file access preventing log export and restricted patch inputs to .apk, .apks, and .xapk while preserving split APK integrity.
fix(loader): Made RemoteApplicationService a local stub to ensure modules load without the manager, resolving #154.
fix(manager): Corrected split signature verification by reading the base signer from the signing block to handle v3.1 rotated keys.
feat(manager): Added support for .apkm bundles and recognized duplicate download filenames like app.apk.1 as valid APKs.
fix(loader): Made RemoteApplicationService a local stub to ensure modules load without the manager, resolving #154.
fix(manager): Corrected split signature verification by reading the base signer from the signing block to handle v3.1 rotated keys.
feat(manager): Added support for .apkm bundles and recognized duplicate download filenames like app.apk.1 as valid APKs.
👍15❤7🔥2
NPatch-v1.0.9-846-release.apk
6.5 MB
fix(manager): 修復 Shizuku 使用者服務無法啟動並強化斷線處理
fix(loader): 修復 execute-only (.text) 頁掃描在 MagicOS 等 ROM 上崩潰
feat(ui): 首頁計數卡片並排重構、關於頁補齊構建資訊與官網連結
fix(loader): 修復 execute-only (.text) 頁掃描在 MagicOS 等 ROM 上崩潰
feat(ui): 首頁計數卡片並排重構、關於頁補齊構建資訊與官網連結
❤15
Forwarded from NPatch
NPatch-v1.0.9-847-release.apk
6 MB
我们将签名绕过后端的 PLT/GOT Hook 方案由 爱奇艺的 xHook 全面迁移至 字节跳动的 bhook,同时剥离了 ShadowHook 依赖,使 bhook 得以独立轻量运作😈
这次重构旨在显著提升原生层签名绕过的效能与整体稳定性,我相信你们也能看到光是 apk 产物,即使是在压缩后发布的版本,它也小了约 0.5MB🦀
有趣的是,这两个开源库的作者都是 caikelun🐾
由于涉及核心 Native 机制的调整,影响范围较广,特在此频道发布测试版,希望能收集大家的第一手反馈!遇到任何问题请随时回报❤️
这次重构旨在显著提升原生层签名绕过的效能与整体稳定性,我相信你们也能看到光是 apk 产物,即使是在压缩后发布的版本,它也小了约 0.5MB
有趣的是,这两个开源库的作者都是 caikelun
由于涉及核心 Native 机制的调整,影响范围较广,特在此频道发布测试版,希望能收集大家的第一手反馈!遇到任何问题请随时回报
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17❤5
AntiHook.apk
2.1 MB
https://bbs.binmt.cc/thread-175114-1-1.html
大家可以測試一下去簽名校驗的實際效果。目前各個去簽方案的側重點各有不同,未來或許能找到更全面的繞過方式。不過就目前而言,即便是 LSPosed 在默認配置下,依然存在四個已知的檢測風險點
大家可以測試一下去簽名校驗的實際效果。目前各個去簽方案的側重點各有不同,未來或許能找到更全面的繞過方式。不過就目前而言,即便是 LSPosed 在默認配置下,依然存在四個已知的檢測風險點
👍20❤3
jar-v1.0.9-850-release.jar
9.3 MB
fix(loader): give framework classloader an XResources super parent
The framework InMemoryDexClassLoader was built with stub_classloader as its parent, which does not define XResources' synthetic super (xposed.dummy.XResourcesSuperClass extending android.content.res.Resources). When a module uses XResources, ART resolves android.content.res.XResources with its super unreachable and records the class as erroneous for the whole process, so resource hooking hard-fails (seen on Android 16). Build the dummy super class loader (already provided by core's BuildDummySuperClassLoader) and install it as the framework loader's parent at construction, falling back to stub_classloader if it cannot be built. Mirrors JingMatrix/LSPatch.
👍16❤4
manager-v1.0.9-851-release.apk
6 MB
refactor(provider): Switch to injecting the provider via continuous classesN.dex files and remove broken reflection
- When NPatch patching, it directly places mtprovider.dex into the main DEX sequence (classesN.dex), allowing the system's native MultiDex to load it.
- Removed the runtime copying of provider.dex and the reflection injection logic for DexPathList$Element(DexFile), which does not exist on Android 8+.
- In signature bypass mode, the installer's DEX is appended via the standard addDexPath method.
- When NPatch patching, it directly places mtprovider.dex into the main DEX sequence (classesN.dex), allowing the system's native MultiDex to load it.
- Removed the runtime copying of provider.dex and the reflection injection logic for DexPathList$Element(DexFile), which does not exist on Android 8+.
- In signature bypass mode, the installer's DEX is appended via the standard addDexPath method.
❤13👍6🔥3
jar-v1.0.9-855-release.jar
9.3 MB
針對 .apks 封裝機制導致簽名校驗失敗之問題進行修復:先前採用 DEFLATED 模式打包 .apks 檔案時,儘管資料內容未壓縮,但壓縮標識仍被設定為 8,致使系統安裝器在使用 mmap 驗證 V2/V3 Signature Block 時產生位置計算偏移,進而判定檔案未簽名。現已全面改用 STORED 模式進行直接封裝,徹底解決 split/base APK 安裝過程中簽名失效之問題。
免 Root 本地模式下的 Xposed 模組設定 App 專用 SDK 已正式發布 v1.0.1 版本,並全面上線 JitPack 平台,使用者無需再手動下載並複製 AAR 檔案。
新增 NPatchRemoteClient.probe(context) 方法,透過單次調用即可明確區分 READY、MANAGER_NOT_FOUND、MODULE_NOT_CONFIGURED 及 DENIED 等狀態,便於向使用者提供引導提示。
即時清理機制:調用端傳入 clientToken,當模組進程退出時,Manager 端將自動透過 DeathRecipient 釋放服務快取,以杜絕記憶體滯留問題。
通知功能修復:修正自定義 applicationId 情境下 Provider 通知 URI 不匹配之隱蔽問題,確保偏好即時同步機制更加穩健。
NPatch 主專案已正式解除與內部子模組之綁定關係,Remote API 將作為獨立開源專案進行維護。
免 Root 本地模式下的 Xposed 模組設定 App 專用 SDK 已正式發布 v1.0.1 版本,並全面上線 JitPack 平台,使用者無需再手動下載並複製 AAR 檔案。
新增 NPatchRemoteClient.probe(context) 方法,透過單次調用即可明確區分 READY、MANAGER_NOT_FOUND、MODULE_NOT_CONFIGURED 及 DENIED 等狀態,便於向使用者提供引導提示。
即時清理機制:調用端傳入 clientToken,當模組進程退出時,Manager 端將自動透過 DeathRecipient 釋放服務快取,以杜絕記憶體滯留問題。
通知功能修復:修正自定義 applicationId 情境下 Provider 通知 URI 不匹配之隱蔽問題,確保偏好即時同步機制更加穩健。
NPatch 主專案已正式解除與內部子模組之綁定關係,Remote API 將作為獨立開源專案進行維護。
👍16❤9
manager-v1.1.0-865-release.apk
6 MB
feat(manager): Add UI support for injecting custom permissions during patching (#149)
perf(assets): Remove redundant copies and enable AGP native compression for embedded resources
perf(assets): Remove redundant copies and enable AGP native compression for embedded resources
👍10❤4🔥2