2011-12-12 47 views
3

经过大量搜索后,我没有找到任何答案如何解决标题中描述的问题。使用InputStream发送媒体播放器应用程序

我想发送意图到系统以播放一些媒体。它可以在任何地方,在加密的zip中,在FTP服务器上或在我的PC上通过SMB访问。我使用输入和输出流作为不同协议之间的管道,因此可以在文件之间复制文件而不会有任何障碍。

我想要实现的是为系统中可用的任何流式应用程序提供对此输入流的访问权限。例如,流媒体应用可以播放位于我的PC的SMB共享中的歌曲,或者直接从加密的zip中播放歌曲,而不用提取/下载它,只使用给定的输入流。

到目前为止,我发现的唯一的东西就是从HTTP URL传输,这不是我的情况。有没有人知道可能的解决方案?

回答

2

还没有尝试过,但我会假设你将不得不提供Uri文件,以便由外部应用程序和与此Uri匹配的提供程序打开。

例如,如果你有一个smb:// ... Uri,那么你需要安装一个提供者来处理这个。

或者它可能是一个自定义的Uri,比如mycustomprovider://,其余的Uri将是特定于应用程序的。

编辑:大多数文件管理器做的是用户本地HTTP连接。他们打开流并收听特定的HTTP端口以将流馈入。

EDIT2:这里是解决方案使用HTTP:Android ServerSocket programming with jCIFS streaming files

虽然经过一个InputStream会如此容易得多;)的确!

相关问题