目标:我的应用中的网络流量收集。
为收集所有网络流量,我自定义了URLProtocol。正常的GET或Json的POST请求都可以正常工作。但这会使音频播放部分无法正常工作。我的音频播放部分基于AVPlayer和AVPlayerItem。 如果我取消注册自定义协议,则音频播放将再次起作用。他们两个之间有联系吗?
根据https://forums.developer.apple.com/thread/75328,AVPlayer确实通过了URL加载系统,但是这些请求是在辅助进程(mediaserverd)中发出的,因此不会“看到”自定义NSURLProtocol子类。
这里发布了我自定义协议的实现。https://github.com/JimmyOu/JODevelop/blob/master/JODevelop/Tool/performance_Monitor/Network/NEHTTPMonitor.m
谢谢。
答案 0 :(得分:0)
没有办法处理。您无法自定义协议来处理AVPlayer工作人员。我的折衷办法是过滤.mp4或.mp3网址,以牺牲一些丢失的网络流量,但不会出错