如何为Android开发代理服务器(TCP)?

我正在尝试在Android中为YouTubeApp开发代理服务器(TCP)。 我将使用ProxyDroid(电话已植根),以便请求/响应通过我的代理服务器。 作为Android,我使用的是Java。 但是有几个挑战:

  1. 必须解析来自YouTubeApp的请求。 是否存在用于解析HTTP请求的现有库(在Java中并且可以与Android一起使用)? 有人甚至可以为此目的建议一些代码片段吗? 或者,我是否必须自己进行解析?

  2. 请求远程站点时; 例如www.google.com,我是否必须使用URL和openConnection()? 或者,也可以使用套接字? 我试图找到一种方法,以便我可以使用套接字并从任何网站获得响应?

希望很快能听到你们的意见。