A module for AOSP, MIUI and HyperOS. Using an algorithm to convert white notification icons into recognizable icons.
![]() |
![]() |
![]() |
![]() |
io.github.howard20181.notificationiconfix
Release Type: Stable
9/9/2025, 4:32:04 PM
It's time to rewrite the icon generation algorithm. It's currently based on a "heuristic foreground extraction" algorithm written in Java. In layman's terms, it redraws the icon based on average brightness, but tries to optimize for edges. There are a ton of issues. It's impossible to cram OpenCV into the system module. Should I switch to the Sobel operator? Or implement erosion manually in Java? Anyway, I can't call external packages, so I'll have to write my own magic. My previous plan to use a third-party icon library hasn't been put on the agenda.
生成图标的算法是时候重写了,现在是Java写的“启发式前景提取”,说人话是基于平均亮度的图标重绘,只不过尽量根据边的情况优化,一堆问题。也不可能把OpenCV塞进系统模块里。之后改用索伯算子?或者是手工用Java实现腐蚀?反正不能调用外部包,只能自己写魔法。之前计划的直接用第三方绘制的图标库也没提上日程。