[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$f1kh188ltscj5x":3},{"code":4,"message":5,"data":6,"timestamp":34},10000,"success",{"full_name":7,"position":8,"description":9,"language":10,"stars":11,"forks":12,"stars_gained":13,"age_days":14,"hn_threads":15,"one_liner":16,"summary_md":17,"topic":18,"github_topics":21,"license":30,"homepage":31,"updated_at":32,"history":33},"rddmwmddr\u002Fandroid-ad-cleaner",10,"关掉国产安卓手机系统里的广告、热搜、资讯推荐和营销推送。不 root，可还原，支持 AI 智能体一键执行。","Python",269,27,257,1,[],"Turns off system ads, hot-search feeds and marketing pushes on Chinese Android phones, mostly via an ADB-connected desktop app.","A practical tool for owners of Chinese Android skins who want fewer ads without rooting or flashing. Its value is the documented scripts and the restore path; the main catch is that per-device support is uneven.\n\n## The problem\n\nOn ColorOS, HyperOS, MagicOS and OriginOS, a fresh phone ships with promoted carousel slots in the app store, feed-style search results, a negative-one-screen cluttered with news cards, and marketing notifications that are hard to tell apart from order or delivery alerts. Turning all of that off by hand means hunting through nested settings pages whose names change between OS point releases. This project walks the phone through those pages over ADB, or gives you a checklist and copyable prompts if you would rather click yourself. The result is a quieter launcher, store and notification shade, with weather warnings and delivery notices deliberately left on.\n\n## What's different\n\nThe mechanism is deliberately conservative. Instead of uninstalling or disabling system packages, it flips settings the vendor exposes, suspends ad components such as `com.opos.ads` and `com.miui.systemAdSolution` with `pm suspend` after asking the owner, and turns off marketing notification channels one by one while preserving service channels. Because nothing is removed from the system partition, it does not require root or bootloader unlocking, and the README says system updates are unaffected.\n\nAutomation is split into per-model recipe scripts stored by brand, model and OS version. The engine reads the screen with uiautomator2, finds the entry point, and taps; when a version does not match, it warns and skips steps rather than tapping blind. That is a good design for a moving target, but it also means the tool's coverage is only as good as the recipes. The README's own table shows one configuration fully tested (Honor PNM-AN10), two listed as path-tested but whole-flow unverified, and two OPPO models with no recipe yet. Restore is documented as one command for suspended packages and notification channels, but in-app switches must be turned back on manually following the checklist, so this is not a one-click undo for everything.\n\n## Who should try it\n\nGood fit: someone with a Mac or Windows PC and a Chinese-brand phone who is willing to enable USB debugging once, run the desktop client or the Python CLI, and appreciates a read-only `check` and a `backup` step before any change. Also a good fit for anyone whose exact model already has a tested recipe.\n\nPoor fit: people who cannot or will not enable developer mode, users of a model absent from the table, and anyone on a phone where only a manual checklist exists and who expected automation. There are documented alternatives that lower the barrier: the signed desktop client needs no Python or AI tool, a chat-AI path works from the phone alone, and the manual checklists require only the phone. Those paths change who can use it, but not the per-model targeting gap.\n\n## Requirements and limitations\n\nThe common paths need a computer plus a USB cable, and the CLI path needs Python with the listed requirements installed. Enabling developer mode and USB debugging is required for the ADB-driven and agent-driven flows, and the project reminds you to turn developer mode off at the end; the manual checklist path avoids this. The README notes that vendor interfaces change with system updates, so a recipe that worked on one point release may skip steps on another.\n\nSuspended packages and disabled notification channels can be re-enabled with documented commands, but settings changed inside vendor apps must be reopened by hand, which is ongoing upkeep rather than a clean rollback. The project accepts no responsibility for problems, and it explicitly does not accept app terms on your behalf. Check the tested-model table and the docs before assuming your phone is covered.\n\n## HotRepo's take\n\nHotRepo recorded the repository at 269 total stars and #10 on the NEW-REPOSITORY board for Python on 2026-10-25, one day after creation. That is a single dated snapshot, not a growth series, so persistence cannot yet be judged. The decision point is coverage: confirm that a recipe exists for your exact model and OS version, and skim the restore guide, before wiring up ADB.\n\n[Project source and documentation](https:\u002F\u002Fgithub.com\u002Frddmwmddr\u002Fandroid-ad-cleaner)",{"slug":19,"name":20},"productivity","Productivity & Utilities",[22,23,24,25,26,27,28,29],"adb","ai-agent","android","coloros","debloat","hyperos","magicos","originos","MIT",null,"2026-10-25T06:46:17Z",[],1792919760]