我是离子应用开发的新手。
我有一个要求我需要从我的应用程序下载视频,将它们存储在中,以便从文件夹中访问视频,但可以是仅从应用程序查看。
示例: YouTube离线存储的方式可下载/存储和视频观看。
在这个方向上的任何帮助都将不胜感激。
谢谢。:)
我已经在Xamarin中实现了这一点。您必须在UR应用程序路径/config下的应用程序中创建您的文件。用户无法查看该文件。创建文件后,您必须通过字节下载视频字节并写入文件。以下是我用来创建文件并下载并阅读Xamarin中该文件的代码。
var path = System.Environment.GetFolderPath(System.Environment.SpecialFolder.ApplicationData);
var filename = Path.Combine(path, ad.adid + ".mp4");
System.Uri url = new System.Uri(ad.video_url);
const int BUFFER_SIZE = 16 * 1024;
using (var outputFileStream = File.Create(filename))
{
try
{
var req = WebRequest.Create(url);
using (var response = req.GetResponse())
{
using (var responseStream = response.GetResponseStream())
{
var buffer = new byte[BUFFER_SIZE];
int bytesRead = -1;
do
{
bytesRead = responseStream.Read(buffer, 0, BUFFER_SIZE);
outputFileStream.Write(buffer, 0, bytesRead);
} while (bytesRead > 0);
catch (Exception e)
{
File.Delete(filename);
StopSelf();
return;
}
}
}
}
catch (Exception e)
{
File.Delete(filename);
StopSelf();
return;
}
}
}
p.s:正如我提到的那样,这是Xmarin c Sharp Code。这对Android不起作用,但想法保持不变。您可以轻松地将此代码转换为Java。