我正在考虑在我的 iOS 应用程序中使用一个知名的第三方框架,该框架使用相机。不幸的是,它向第三方 API 发出完全不必要的 HTTP 请求,从而允许他们捕获和跟踪设备 ID、设备类型、操作系统版本和其他信息等信息。这些调用对于框架的目的来说完全不必要,并且当网络连接不可用/禁用时,框架可以正常工作。
我的问题是是否可以在应用程序级别(即通过代码或配置)拦截和/或阻止应用程序内对特定主机(例如 api.thirdparty.com)进行的任何调用。
最佳答案
您也许可以创建自定义 NSURLProtocol 并将其注册以处理 HTTP/HTTPS。然后过滤您允许通过的 URL。您可以从这个开源项目开始来指导您 - 它演示了如何将一些请求传递到系统 HTTP/HTTPS 处理程序,并自己处理其他请求。
关于objective-c - 阻止第三方 iOS 框架的网络访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17306198/