文章摘要
文章探讨了Bluesky应用在截图时显示其Logo,但在正常使用中却隐藏的机制。作者通过实验发现,应用可能通过监听截图按键组合,在截图瞬间替换界面元素,从而在截图中加入Logo。
文章总结
标题:Bluesky如何在截图中显示其标志
来源:https://timmarinen.net/2026/bluesky-screenshots/
发布时间:2026年8月15日 星期六 23:41 GMT
我有时会截取喜欢的帖子,比如这张截图(已裁剪界面其余部分)。注意到右上角的Bluesky标志后,我好奇为什么使用应用时这个标志并不显眼。查看应用内帖子时,发现标志消失了,取而代之的是“关注”按钮。
我记得有些应用会将标志隐藏在iPhone刘海区域,避免在正常使用时突出,但截图时会显示。而这里标志是直接放置的,他们是如何实现的?
尝试在切换应用时截图,发现“关注”按钮可见。难道他们设置了监听器,在按下截图键的瞬间进行替换?我不是iOS开发者,不确定可行性。
幸好Bluesky应用是开源的。答案在名为GrowthHack.tsx的文件中,它使用了expo-privacy-sensitive包。该包创建了带有isSecureTextEntry属性的UITextField,并将实际内容(按钮)渲染到该字段的.layer中。截图时,iOS会隐藏这个UITextField,让Bluesky标志显现出来。其他平台则直接渲染内容,不进行遮蔽。
为什么切换应用时不起作用?我猜测iOS在开始手势时自行截取了快照(未触发遮蔽),而截图时没有实时的UITextField实例响应,只有静态快照。不过我不是iOS开发者。
这是巧妙技巧还是滥用隐私API?相关讨论帖中多数人并不喜欢这个功能,但我认为它很可爱。搜索发现,Telegram和Signal也实现了类似功能,因此苹果短期内不太可能修复。
评论总结
根据评论内容,总结如下:
主要观点与论据:
反对应用干预截图行为(多数评论,评分无明确数值,但认可度较高):
- 用户认为截图应忠实反映屏幕内容,应用不应添加水印或修改界面(评论10:“When I take a screenshot, I expect to have an image of exactly whatever was displayed on the screen at the time. Its not a picture of your app, its a picture of my screen.”)。
- 批评此举是“增长黑客”手段,服务于平台而非用户(评论13:“This is in fact a watermark to promote the application... Sam literally named the file GrowthHack.tsx”)。
- 认为这是平台“恶化”(enshittification)的体现(评论9:“Thus the Inevitable Enshittification of all Centralized Platforms”)。
支持或中立观点(少数评论):
- 认为水印有助于识别来源,尤其当Bluesky界面与X相似时(评论8:“useful for discovering bluesky from screenshots getting posted on other platforms”)。
- 认为相比永久Logo,这种低影响方式可接受(评论16:“If it's between this and a perpetual logo, I'll take this any day... I think this isn't overly hostile”)。
指出其他平台也类似(多评论提及):
- X、Threads、TikTok、RevenueCat等均有类似做法(评论2:“X does the same thing”;评论14:“Tiktok has been watermarking videos since the beginning”)。
技术/隐私相关讨论:
- 指出截图时“关注”按钮可见可能泄露密码长度(评论20)。
- 建议将此类功能设为可选项(评论18:“should be made as a setting which can be changed in the setting menu”)。
平衡性总结:
多数评论持批评态度,认为应用干预截图是“敌意”行为,损害用户自主权;少数认为在特定场景下(如来源识别)有合理用途。同时,评论指出该做法在社交平台中普遍存在,并非Bluesky独有。