【发布时间】:2016-07-22 06:49:09
【问题描述】:
我在我的 Android 应用程序中从服务器上的受保护目录流式传输视频文件时遇到问题。我正在使用基本 HTTP 身份验证 (htaccess)。
我在 URL 中发送用户名和密码,然后将其解析为 URI,但它不起作用。我有一个 Apache 服务器,我在其中创建了一个目录并在其中上传了一个视频文件,并使用 .htaccess 保护了该目录。
当我在没有 .htaccess 保护的情况下流式传输视频时,它可以正常传输,但是当我使用受保护的目录进行传输时,它不会流式传输视频并给出错误:
无法在客户端打开文件;尝试服务器端:java.io.FileNotFoundException:没有内容提供者:werplay.com/LT_Data/LTWalkthroughVideos/test.mp4";
我已经给出了下面的代码sn-p。
public class MainActivity extends AppCompatActivity {
VideoView videoView;
String LINK = "http://user:pass@www.site.com/Folder1/Folder2/test.mp4";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
videoView = (VideoView)findViewById(R.id.videoView);
playServerVideo(false,LINK);
}
public void playServerVideo(boolean controls, String url)
{
Uri video = Uri.parse(url);
if (controls)
{
MediaController mediaController = new MediaController(this);
mediaController.setAnchorView(videoView);
videoView.setMediaController(mediaController);
videoView.setVideoURI(video);
videoView.start();
}
else
{
videoView.setVideoURI(video);
// videoView.
videoView.start();
}
}
【问题讨论】:
-
您是否在标准 PC 上使用 curl 测试过服务器?不幸的是,“不工作”并不是对故障状态的描述性解释。
-
你能告诉我你还需要什么来理解这个问题吗?我想我已经尽可能多地描述了这个问题,我有一个 apache 服务器,我在上面创建了一个目录和在其中上传了一个视频文件并使用 .htaccess 保护该目录,现在我正在尝试在我的 android 应用程序中流式传输该视频,上面给出了代码。
-
我遇到的问题是,当我在没有 .htaccess 保护的情况下流式传输视频时,它可以正常传输,但是当我使用受保护的目录进行传输时,它不会流式传输视频并给出错误“无法打开文件”客户端;尝试服务器端:java.io.FileNotFoundException:无内容提供者:werplay.com/LT_Data/LTWalkthroughVideos/test.mp4"
-
@halfer 你明白这个问题了吗?我已经坚持了三天,第二次发布这个问题。
-
好多了!我不明白为什么这不是最初的问题,但现在更容易回答了。
标签: java android .htaccess video-streaming