TikTok 为何、如何使用剪贴板?
TikTok 发言人对硅星人表示,开发者之所以会在 iOS 14 预览版看到 TikTok 频繁读取剪贴板内容,实际上是因为 TikTok iOS 应用会通过调用剪贴板进行垃圾内容防御 (anti-spam)。
这个问题被公众发现之后,TikTok 已经在 App Store 发了新版,去掉了这一功能。
一位了解情况的员工对 TikTok 剪贴板反垃圾的工作机制进行了具体解释:
当用户在文本框输入时,应用会对用户剪贴板里是否存在内容,进行一个“是”或“否”判定。
如果答案是“是”的话,该用户在 TikTok 视频下方留下的评论,其权重就会降低,不会出现在留言的靠前位置。
TikTok 不会读取剪贴板里的具体内容,只会看剪贴板里是否有内容。
这个思路背后的逻辑是:认定那些在进入 TikTok 后剪贴板里仍有未清理内容的用户,其剪贴板内容是垃圾内容的可能性更大。
这是个一概而论的逻辑,甚至有些匪夷所思。
正常来讲,反垃圾内容的对象应该是用户提交的内容,而非保存在剪贴板里的内容。事实上,由于剪贴板功能设计,粘贴完成之后剪贴板里的内容依旧存在。正在读文章的你可以看一下,自己的剪贴板里是否有文字——如果用这个标准来判断垃圾内容,那误伤简直不要太多。
内容平台有很多其他更常见的反垃圾做法:绝大多数平台都会在服务器端进行反垃圾内容处理;在客户端本地,也可以检测文本框单位时间内是否输入了太多文字。这些都比 TikTok 整改之前的方法更有逻辑。
而且,该员工透露,这一功能并非由 TikTok 的反垃圾组开发,而是由另一个业务方向相近的团队负责。
不过可以确认的是,TikTok 并没有像很多人看了视频之后所担心的那样,在监听用户在文本框输入的内容。
这一说法得到了多位资深 iOS 开发者的支持。
知乎用户、iOS 开发教程作者王禹效告诉硅星人,当用户在 TikTok 内输入内容时,剪贴板调用的通知频繁出现,疑似因为调用了一个名叫 textFieldDidEndEditing(_:) 的函数,也即“文本框输入结束”。
结果就是,当用户在 TikTok 的文本框输入文字,每次输入动作停止的时候,都会触发对剪贴板内容的调用。
至少两位资深 iOS 开发者认为,从视频里的应用行为来看,顶部弹窗通知只是代表读取了剪贴板里的内容而已,“有人以为这代表 TikTok 在监听用户打字,其实没有。只是在文本框输入文字的行为触发了读取剪贴板内容。”王禹效表示。
至少在这次事件当中,TikTok 没有人们指责的那么邪恶。整改之前的行为,最多影响了用户的使用体验,从代码的层面来看,也确实“滥用”了剪贴板权限,但没有证据证明它将剪贴板内容用于侵犯用户隐私l商业获利、。
据硅星人了解,TikTok 在去掉前述反垃圾内容的功能后,仍会继续在应用内保留调取剪贴板的功能,会在合法合规的原则上使用。不过 TikTok 暂未透露会具体的使用目的。
那么,调取剪贴板这件事,都有什么可能的使用目的?请继续往下读。
滥用剪贴板背后是什么把戏?
读取剪贴板内容是 iOS 平台允许的功能。多位受访的资深开发者和业内人士也表示,调取剪贴板确实是中美互联网行业的惯常做法。原则上,只要信息需要在应用之间传递,就可以调取剪贴板。