file-type

iOS 9 Safari新特性:移植EasyList规则实现内容阻拦

ZIP文件

下载需积分: 50 | 815KB | 更新于2025-01-10 | 61 浏览量 | 0 下载量 举报 收藏
download 立即下载
EasyList是一组用于阻止网络广告的规则,它被广泛用于各种广告拦截扩展,尤其是AdBlock Plus。随着iOS 9的推出,苹果引入了Content Blocker API,使得开发者能够在移动Safari浏览器中实现广告拦截功能。该项目的目的是利用这个新的API,将EasyList中的规则移植到iOS平台,让用户能够在使用iPhone或iPad等设备访问网页时,享受到与桌面版浏览器相似的无广告浏览体验。 项目当前状态显示,大约有55%的规则已经被翻译并准备就绪。这些规则的移植工作是在一个名为generate.js的JavaScript文件中进行的,其中包含了将EasyList的规则格式转换为iOS Safari Content Blocker所要求的JSON格式的代码。 开发者在进行这项工作时遇到了一些挑战。例如,当if域触发器包含非拉丁字符的URL时,Mobile Safari似乎会处理失败。这表明iOS Content Blocker在处理国际化的URL时可能存在限制。此外,如果生成的JSON格式不正确,相关的规则将被忽略,并且不会有任何错误提示。这提示开发者在开发过程中需要非常仔细地检查和测试生成的JSON文件,以确保所有的广告拦截规则都能正常工作。 这个项目使用了Swift编程语言,这是因为Swift是苹果官方推荐的iOS开发语言,具有性能高、安全性好以及开发效率高等优点。通过使用Swift语言,开发者可以更加轻松地访问iOS的API,并且能够更好地利用苹果的开发工具链。 在iOS 9以及之后的版本中,用户可以通过安装Content Blocker扩展来增强Safari的广告拦截能力。这些扩展可以是系统自带的,也可以是第三方开发者创建的。通过使用EasyListSafari项目,第三方开发者能够为用户提供一个更加纯净、无干扰的浏览体验,同时保持了EasyList社区长期以来构建的广告拦截标准和规则库。 总之,EasyListSafari项目不仅展示了一个具体的技术实现,即如何将现有的广告拦截规则适配到iOS平台,同时也指出了在开发过程中需要注意的特定问题,例如处理国际化字符集和确保JSON文件格式的正确性。随着移动设备在互联网使用中的比例不断上升,这类项目的重要性也在增加,它确保了用户无论在何种设备上都能享受到良好的上网体验。"

相关推荐

剑道小子
  • 粉丝: 37
上传资源 快速赚钱