Xamarin.Forms Android将图像保存到图库

时间:2015-07-08 14:52:49

标签: xamarin xamarin.android xamarin.forms

我有一张照片的结果。我想将该照片保存到用户图库。

我已经尝试了所有方式,但没有任何需要......我正在保存的类是一个简单的C#类 - 它不会继承任何类型的android类型,但如果需要可以做到(也许可以启动一个意图 - 虽然我尝试了这个,结果是另一个兔子洞)

我试过这个:

try{
    using (FileStream fs = new FileStream(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) + _name, FileMode.OpenOrCreate))
    {
        fs.Write(bytes, 0, bytes.Length);
    }
} catch (Exception ex) {
    Console.WriteLine (ex.Message);
}

还有:

        if (_filename.ToLower ().Contains (".jpg") || _filename.ToLower ().Contains (".png")) {
            stream.Position = 0;
            var bitmap = BitmapFactory.DecodeStream (stream);

            var finalStream = new MemoryStream ();

            bitmap.Compress (Bitmap.CompressFormat.Jpeg, 25, finalStream);
            bitmap = null;

            finalStream.Position = 0;

            var path2 = Environment.GetFolderPath (Environment.SpecialFolder.MyPictures);
            var filename2 = System.IO.Path.Combine (path2, _filename);

            using (var fileStream = File.Create (filename2)) {
                finalStream.Seek (0, SeekOrigin.Begin);
                finalStream.CopyTo (fileStream);
                fileStream.Close ();

                finalStream.Dispose ();
                stream.Dispose ();
                fileStream.Dispose ();
                GC.Collect ();
            }
            return;
        }

我认为这将是一件容易的事! MEH ...

任何帮助?

1 个答案:

答案 0 :(得分:0)

使用MediaStore ContentProviderMediaStore.Images.Media有几种可用于向图库添加内容的插入方法。

相关问题