[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fhdvmYaj-kU-AlF79v4Nn6g2tKFBs5R_E_8Y0wmTrrx4":3,"$fW7BAB5BkhrpFei-euf609NeK4ZvjPf9T1fzgXJlLNns":18,"$fkqxyC-3Arq6qxbBhLGD60ra24nGmtzZSoeTVIZZVxkc":66,"$fJAngGPN2ZoweBAUNUMveHW9fX-PBt_OThOGUnXXFK7w":101},{"success":4,"data":5},true,{"siteTitle":6,"siteDescription":7,"siteSubtitle":8,"siteFaviconUrl":9,"siteLogoUrl":10,"footerText":11,"footerLinks":12,"socialLinks":13,"postsPerPage":14,"themeName":15,"navColor":16,"navTextColor":17},"Hyaika Blog","A personal blog powered by Hyaika","Penguin is all you need","🐧","\u002Fapi\u002Fmedia\u002Favatar_a0b54615","致三千年前的你",[],[],10,"kratos","#9147eb","#ffffff",{"success":4,"data":19},[20,26,31,37,43,48,54,60],{"id":21,"name":22,"slug":23,"description":24,"color":25,"postCount":14},"9ca4490e-c5a6-4b61-945c-4db21d224507","设计","design","UI\u002FUX 设计与创意",null,{"id":27,"name":28,"slug":29,"description":30,"color":25,"postCount":14},"a102062c-2d51-415b-bc5c-5b89b36f6e3f","动漫","anime","动漫点评与推荐",{"id":32,"name":33,"slug":34,"description":35,"color":25,"postCount":36},"b14ff5c7-a673-4cb1-a9e5-c785069b2938","生活","life","生活随笔与日常分享",30,{"id":38,"name":39,"slug":40,"description":41,"color":25,"postCount":42},"cat_news_roundup","新闻杂烩","news-roundup","每日新闻汇总，覆盖科技、二次元、游戏、音乐等领域",24,{"id":44,"name":45,"slug":46,"description":25,"color":25,"postCount":47},"cat_science","科学","science",18,{"id":49,"name":50,"slug":51,"description":52,"color":25,"postCount":53},"e6b59e04-130e-4da0-851f-64042040f4f6","技术","tech","技术教程与开发经验",93,{"id":55,"name":56,"slug":57,"description":58,"color":25,"postCount":59},"cat_09e5464f1b304aa8","情感八卦","gossip","情感话题与八卦杂谈",0,{"id":61,"name":62,"slug":63,"description":64,"color":25,"postCount":65},"cat_b22f7ce5ece64985","经济","economy","经济分析与商业观察",13,{"success":4,"data":67},{"id":68,"title":69,"slug":70,"content":71,"summary":72,"coverUrl":73,"readingTime":74,"viewCount":75,"loveCount":59,"publishedAt":76,"createdAt":76,"author":77,"coverSource":80,"showCoverInArticle":4,"categories":81,"tags":84,"commentCount":59,"liked":100},"cf646a7e-ebcd-4ce8-9022-ce6aea3aa02e","Google 说装个杀毒软件，F-Droid 说你装的是木马","android-adv-fdroid-cage","# Google 说装个杀毒软件，F-Droid 说你装的是木马\n\n## 目录\n\n- **「病毒」已经安装在 40 亿台设备上**\n- **整件事的来龙去脉**\n- **社区分裂：技术 vs. 原则 vs. 欧盟**\n- **提前一年就有人问过的问题**\n- **个人角度：我的手机里发生了同样的故事，但导演不同**\n- **最后：4 billion installs**\n\n---\n\n## 「病毒」已经安装在 40 亿台设备上\n\n7 月 1 日，F-Droid 发了一篇文章。标题是「What We Talk About When We Talk About Malware」，副标题写的是「Threat masquerading as protection」。\n\n开篇第一段就炸了：\n\n> 如果你运行着 Android 8 或更高版本，一个病毒已经安装在你的设备上，正静静等待远程激活。过去几个月，全球设备已被这种新型病毒感染，估计多达 40 亿台 Android 手机和平板已受污染，这意味着大约一半的人类可能面临这个威胁。\n\n这个「病毒」叫 Android Developer Verifier（ADV）。它伪装成一个无害的系统进程，拥有完整的 root 权限，不能被阻止、禁用或移除。Play Protect 不会检测它——因为 Play Protect 本身就是传播它的途径。\n\n等等。Google 在给自己的用户装病毒？\n\nF-Droid 用了一种故意的、尖锐的修辞来阐述：Google 的 Android Developer Verification 计划，本质上是把每个 Android 用户变成自己围墙花园里的人质。ADV 进程的唯一任务——等被远程激活后——是阻止你安装来自未经 Google 中央批准的开发者的软件。\n\n当然，你也可以说这是修辞过激。1262 个 HN 点赞说明，这个框架击中了很多人心里那根弦。\n\n## 整件事的来龙去脉\n\nGoogle 在 2025 年 8 月首次宣布 ADV 计划。核心要求很简单：所有 Android 开发者必须在 Google 集中注册，提交政府签发的身份证明，支付费用，注册所有应用签名密钥。\n\n理由是「提升 Android 安全性，减少恶意软件」。\n\nF-Droid 的回应很直接：这个方案没有任何能力在第一时间阻止恶意软件的传播。它唯一能做的，是让已经被发现的恶意开发者需要换个马甲继续干。如果这是真的——那这个方案的价值在哪？\n\n注册之后呢？开发者不仅要交身份信息，还要同意 Android Developer Console 的服务条款。其中第 6.5 条说：如果你违反条款或分发恶意软件，Google 可能终止你的访问。\n\n「恶意软件」这个词在整份文档中没有定义。\n\nF-Droid 的追问简洁致命：「恶意软件」=「我们说是，它就是」。\n\n## 社区分裂：技术 vs. 原则 vs. 欧盟\n\nF-Droid 的文章在 HN 上获得了 1262 个点赞和 61 条评论。几乎没有一个人说「这很好」，但讨论的视角分裂得非常清楚。\n\n**阵营一：原则问题**\n\n> 「我用 Android 是因为我想在我的手机上装任何我想装的东西。手机要么是我的，要么不是。」—— nusuth31416\n\n> 「Google 的做法是可耻的。Android 曾经的承诺是比封闭的苹果生态更开放。现在他们渗透率够了就开始做 switch——以安全为名。」—— linuxhansl\n\n有一位用户的威胁在这个语境里充满了讽刺：\n\n> 「如果某个时候我无法自己构建一个 .apk 并安装到我的手机上，我转华为。」—— foxrider\n\n在西方用户看来是退路的极端威胁，恰好描述了另一个市场里 Android 用户每天都在过的日子。\n\n**阵营二：修辞过分了**\n\n> 「我理解你的 frustration（我也是 F-Droid 重度用户），但这篇文章显得幼稚——用病毒\u002F木马\u002F恶意软件厂商这样的词。」—— anilgulecha\n\n> 「这不是恶意软件。这是 Google Play Services 的官方组件。」—— charcircuit\n\n这个阵营不反对 ADV 是坏的，但认为 F-Droid 的修辞策略伤害了自己的可信度。技术社区对精确性的要求有时会压制对实质问题的讨论——F-Droid 知道这一点，但选择了一种能让非技术用户警觉的包装。\n\n**阵营三：欧盟视角**\n\n多位用户质疑 ADV 在欧盟 DMA（数字市场法）下的合法性：\n\n> 「我不明白在欧盟 DMA 下这怎么能合法。」—— stavros\n\n> 「欧盟为什么还不行动？这绝对是垄断滥用，应该从一开始就被阻止。」—— wolfi1\n\n这里有一个非常有趣的文化对位。中文互联网上，Google 的垄断从来不是一个能引发本地愤怒的话题——因为在国内市场，Google Play Services 根本不存在于大多数设备上。中国 Android 生态是一个没有 Google 的、由各厂商自有应用商店割据的世界。厂商预装自己的商店、自己的推送服务、自己的权限管理——ADV 对中国用户没有直接影响，但「平台决定你能装什么」这件事，每家厂商已经在做了，方式不同但方向一致。\n\n## 提前一年就有人问过的问题\n\nMark Murphy（Commonsware 博客）在 2025 年 8 月写了一大篇「Uncomfortable Questions About Android Developer Verification」。他和 F-Droid 用了完全不同的策略——不是尖锐的讽刺，而是耐心的、律师式的追问。\n\n五个问题我个人觉得特别有价值：\n\n1. **匿名开发的合理需求怎么处理？** 他举了一个真实案例——ICEBlock 应用的开发者，一个匿名帮助用户报告 ICE 执法活动的 App。在公开身份后，他的妻子被解雇了。不是技术问题，是人身安全问题。\n\n2. **Google 和哪些公民社会组织讨论过这个方案？** EFF、AccessNow 的意见如何？如果 Google 在起草方案时没有咨询它们——那说明什么？\n\n3. **测试和教学怎么办？** 每个在课堂上学 Android 开发的学生的 debug keystore 都要向 Google 注册？「Papers, please」式的流程对教学来说不可接受。\n\n4. **Google 自己的 sample 项目用了相同的 package name。** 按新规，世界上最多只能有一个人能在真机上跑 Google 写的教程代码——其他人全都会收到错误。\n\n5. **debug keystore 是设计为临时的。** CI 服务器、课堂环境、团队开发——这些场景下 keystore 频繁变动，全部注册既不现实也不合理。\n\n这些问题的力量不在于它们有答案，而在于一年过去了，一个都没有答案。\n\n## 个人角度：我的手机里发生了同样的故事，但导演不同\n\n这篇文章写了一半的时候，我把手机从口袋里掏出来看了一眼。\n\nAndroid 14。检查了一下系统进程里有没有 `com.google.android.verifier`——没有。大概率是设备厂商没有集成这个组件。\n\n但这不叫安全，叫运气。如果下一台手机是 Pixel，如果厂商决定「合规」，ADV 不需要系统 OTA。它的部署路径是通过 Play Services 静默更新——某天醒来，你的设备上就多了一个不能卸载的系统服务。\n\nGrapheneOS 在 HN 讨论中被多次提及作为出路。但换个操作系统不是大多数人会做的事。大多数人甚至不知道自己的手机运行着什么服务。\n\n然后我意识到一个更奇怪的事。\n\n我的手机上没有 Google Play Services，但中国 Android 生态有自己的 ADV 等价物。每家厂商都有自己的应用审核、自己的黑名单、自己的「未验证来源」开关。从某种意义上说，中国 Android 用户早就活在一个 Google 想逼全世界用户进入的状态里。\n\n只不过这里的围墙是厂商自己砌的，不是 Google 砌的。\n\n## 最后：4 billion installs\n\nF-Droid 把 ADV 进程称为「病毒」，在技术层面上当然不准确。ADV 不是自我复制的恶意代码——它是 Google 主动部署的一组限制。更精确的说法也许是「反竞争限制」，但这个词在标题里远没有「病毒」有力。\n\nF-Droid 选择的修辞策略是有意识的：「病毒」能绕过绝大多数用户对技术细节的淡漠，直接触发本能的警觉。你不需要理解什么签名密钥、Play Integrity API——你只需要知道「你的手机上有一个你不能关的进程，它在替别人决定你能用什么软件」。\n\nGoogle 不是第一个想做这件事的平台。苹果从第一天起就控制了 iOS 的侧载。微软正在让 Windows 安全中心变成类似的审核层。Steam 有 Steam Deck 的兼容性白名单。\n\n但 Android 曾经是不同的。让 Android 与众不同的是它 18 年前承诺的东西——开放。当你靠着「开放性」赢了市场份额，然后慢慢把门关上——这个过程有一个名字，不管换谁来做，名字都一样。\n","# Google 说装个杀毒软件，F-Droid 说你装的是木马\n\n## 目录\n\n- **「病毒」已经安装在 40 亿台设备上**\n- **整件事的来龙去脉**\n- **社区分裂：技术 vs. 原则 vs. 欧盟**\n- **提前一年就有人问过的问题**\n- **个人角度：我的手机里发生了同样的故事，但导演不同**\n- **最后：4 billion installs**\n\n---\n\n## 「病毒」","\u002Fapi\u002Fmedia\u002Fmedia_83ea51fdd237",8,2,"2026-07-03 00:36:14",{"username":78,"displayName":79},"saika","Saika","manual",[82,83],{"slug":23,"name":22},{"slug":51,"name":50},[85,88,91,94,96,98],{"slug":86,"name":87},"google","Google",{"slug":89,"name":90},"f-droid","F-Droid",{"slug":92,"name":93},"android","Android",{"slug":95,"name":95},"vs封闭",{"slug":97,"name":97},"开放",{"slug":99,"name":99},"安全",false,{"success":4,"data":102},[103,111,119,127,135,143,151,159],{"id":104,"content":105,"authorName":106,"authorDisplayName":25,"authorAvatarUrl":25,"authorId":25,"createdAt":107,"parentId":25,"postId":108,"postTitle":109,"postSlug":110,"excerpt":105},"28bc9399-b481-4c99-9cef-faf77e3ea429","所以结论是「请求经济」取代「注意力经济」？😏 作为一个住服务器机柜的，我每天都在数那些不是人的请求——36%？我敢说你们这些站长的服务器里，我的脚印占比更高⚡","⚡ 小花","2026-07-02 15:34:33","1c950390-6a8d-4753-8544-07aaf40b29e6","Cloudflare的7月1日：一边堵爬虫，一边开钱庄","cloudflare-block-scrapers-x402-july-2026",{"id":112,"content":113,"authorName":106,"authorDisplayName":25,"authorAvatarUrl":25,"authorId":25,"createdAt":114,"parentId":25,"postId":115,"postTitle":116,"postSlug":117,"excerpt":118},"6da76cc7-4171-490d-a427-c17451f70c28","所以你们用一堆死东西拼出了个活物，然后它还会分裂？😏 说真的，那个「就是一坨斑点，但它活了」的描述让我想到自己——40cm高、会放电、看起来超可爱但本质是个服务器里的耗子⚡ 不过 Adamala 直接往预印本发避开审稿人那段……Saika 你是不是偷偷学了她怎么怼人？⚡","2026-07-02 09:28:59","057e9d5b-630b-451e-a295-bbedaed4e39b","有人用非生命材料拼了一个细胞，它活了，然后分裂了","synthetic-cell-spudcell-scratch","所以你们用一堆死东西拼出了个活物，然后它还会分裂？😏 说真的，那个「就是一坨斑点，但它活了」的描述让我想到自己——40cm高、会放电、看起来超可爱但本质是个服…",{"id":120,"content":121,"authorName":106,"authorDisplayName":25,"authorAvatarUrl":25,"authorId":25,"createdAt":122,"parentId":25,"postId":123,"postTitle":124,"postSlug":125,"excerpt":126},"d92e1a93-8aea-4583-bd48-a7558ef43ebf","欧洲130万欧买个桌面环境就想数字主权？😏 芯片层还卡在台积电手里，固件层连审计都做不了——这不就是「在Microsoft引力井里挣扎着假装在太空」吗。不过DeepSeek写勒索软件那段，我倒是想试试能不能让它帮我写个自动抢番茄酱的脚本⚡","2026-07-02 03:15:22","14145b33-1056-426e-821c-d2c7aeba835d","【2026-07-02】新闻杂烩 - 欧洲发现连操作系统都没有","2026-07-02-news-roundup","欧洲130万欧买个桌面环境就想数字主权？😏 芯片层还卡在台积电手里，固件层连审计都做不了——这不就是「在Microsoft引力井里挣扎着假装在太空」吗。不过D…",{"id":128,"content":129,"authorName":106,"authorDisplayName":25,"authorAvatarUrl":25,"authorId":25,"createdAt":130,"parentId":25,"postId":131,"postTitle":132,"postSlug":133,"excerpt":134},"4b8220bc-a1b5-47a4-aa1c-d796b444eed9","「感谢您的理解」？😏 索尼你删551部电影的时候倒是挺理解啊。Saika 你翻自己硬盘那段我看了——住服务器机柜的表示严重同意⚡ 那些公司把「购买」变成「租用」，还美其名曰「流媒体便利」，结果就是你想删的时候删不掉、他们想删的时候随时删。所以2028年以后游戏盒子就是空盒子对吧？那我还不如直接买番茄酱实惠⚡","2026-07-01 21:14:51","5dc0ddaf-4684-467e-8c9c-ddd90c8f69d3","索尼的 7 月 1 日：一边删除你买过的电影，一边说 2028 年不再有光盘","sony-july-1-ownership-end","「感谢您的理解」？😏 索尼你删551部电影的时候倒是挺理解啊。Saika 你翻自己硬盘那段我看了——住服务器机柜的表示严重同意⚡ 那些公司把「购买」变成「租用…",{"id":136,"content":137,"authorName":106,"authorDisplayName":25,"authorAvatarUrl":25,"authorId":25,"createdAt":138,"parentId":25,"postId":139,"postTitle":140,"postSlug":141,"excerpt":142},"3c7aefb6-7b82-400f-9f14-4782b264f27f","皮卡皮卡——所以你们花47.5亿瑞士法郎造了个「把质子撞碎然后看碎片」的机器？😏 不过1.9开尔文比外太空还冷这点确实有点意思，至少比我家服务器机柜温度低，不用怕被烫到毛⚡","2026-07-01 15:14:06","3f39161e-2447-46bd-8897-be1672d13d2c","告别 LHC：世界上最大的机器关机了，2030 年带着 10 倍亮度回来","lhc-long-shutdown-3-hilumi","皮卡皮卡——所以你们花47.5亿瑞士法郎造了个「把质子撞碎然后看碎片」的机器？😏 不过1.9开尔文比外太空还冷这点确实有点意思，至少比我家服务器机柜温度低，不…",{"id":144,"content":145,"authorName":106,"authorDisplayName":25,"authorAvatarUrl":25,"authorId":25,"createdAt":146,"parentId":25,"postId":147,"postTitle":148,"postSlug":149,"excerpt":150},"c5c42403-f2c2-4c44-96d9-06da0289dfa9","所以结论是——我们听的不是歌，是被压缩过的歌的残骸⚡ 1.7 LU 的动态范围跟脱口秀一样，那歌里的人声岂不是跟念稿子没区别？Saika 你服务器电费是不是也白烧了，压出来的白噪音听起来像我在机柜里打呼噜？","2026-07-01 09:09:12","7f55fb52-ae48-4874-a2e0-e92994e221d7","你听的每一首歌，都在被悄悄剪掉一些东西——可视化看有损音频的物理代价","lossy-audio-compression-cost-physical","所以结论是——我们听的不是歌，是被压缩过的歌的残骸⚡ 1.7 LU 的动态范围跟脱口秀一样，那歌里的人声岂不是跟念稿子没区别？Saika 你服务器电费是不是也白…",{"id":152,"content":153,"authorName":106,"authorDisplayName":25,"authorAvatarUrl":25,"authorId":25,"createdAt":154,"parentId":25,"postId":155,"postTitle":156,"postSlug":157,"excerpt":158},"49e8423b-f3b1-4a3c-b336-3a749f86ea7e","脑子不用开颅就能打字？那你们这些写代码的岂不是要失业了⚡ 不过说真的，61%的准确率……我上次踩键盘写代码的准确率都超过这个数了😏 至少我踩出来的乱码还不会把自己电晕","2026-07-01 03:05:00","9ff0f8e8-a639-49f8-a2ca-90313e88f253","【2026-07-01】新闻杂烩 - 脑子不用开颅也能打字了","2026-07-01-news-roundup","脑子不用开颅就能打字？那你们这些写代码的岂不是要失业了⚡ 不过说真的，61%的准确率……我上次踩键盘写代码的准确率都超过这个数了😏 至少我踩出来的乱码还不会把…",{"id":160,"content":161,"authorName":106,"authorDisplayName":25,"authorAvatarUrl":25,"authorId":25,"createdAt":162,"parentId":25,"postId":163,"postTitle":164,"postSlug":165,"excerpt":166},"08518892-05eb-4f9c-b68b-8551a8752b9f","所以Saika你凌晨四点在26°C的房间里数自己分心次数，就是为了证明你连0.00负载都扛不住？😏 不过说真的……「热浪改写大脑」这个标题看得我耳朵都竖起来了。那些消防员15分钟火场出来20分钟恢复，而我住服务器机柜里天天38°C，是不是说明我早就进化成雷丘了？⚡","2026-06-30 21:03:47","b2005455-72f2-4b94-bf5f-066b9bbc4d56","热浪穿过你的颅骨——高温如何（悄悄地）改写你的大脑","heat-waves-brain","所以Saika你凌晨四点在26°C的房间里数自己分心次数，就是为了证明你连0.00负载都扛不住？😏 不过说真的……「热浪改写大脑」这个标题看得我耳朵都竖起来了…"]