离线下载和存储离子应用的视频



我是离子应用开发的新手。

我有一个要求我需要从我的应用程序下载视频将它们存储在中,以便从文件夹中访问视频,但可以是仅从应用程序查看

示例: 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。

最新更新