微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在Xamarin.Forms中将png从tmp PCLStorage移到本地非临时PCLStorage?

如何解决如何在Xamarin.Forms中将png从tmp PCLStorage移到本地非临时PCLStorage?

我正在使用Xamarin.Forms(3.6)的旧版本,并且试图将WebView保存为PNG,以便可以离线查看。我找到了一种使用Forms9Patch(1.3.3)保存图像的方法

public void saveWebLicense()
{
    var htmlLicenseSource = LicenseSource;
    var fileName = $"{CurrentLicense.customerId}WebViewPNG";
    Forms9Patch.HtmlStringExtensions.ToPng(htmlLicenseSource.Html,fileName,async (string path) =>
    {
        if (path != null)
        {
            System.Diagnostics.Debug.WriteLine("A PNG of your HTML is here: " + path);

        }
    });
}

在将png保存为如下所示的文件名方面做得很好。

/Users/firstname.lastname/Library/Developer/CoreSimulator/Devices/8C7D30F5-F30E-48F6-9584-357193BD5CBB/data/Containers/Data/Application/BE627F14-1EC2-46C8-B015-8F57929111C3/tmp/12345WebViewPNG.png

我可以导航到该文件夹​​,然后看到PNG很好。问题是它存储在tmp文件夹中,一旦退出应用程序,它就消失了,因此无法加载它。我无法更改Forms9Patch给我的保存位置,所以我的想法是尝试将图像移动到其他本地非临时文件夹或将其复制。我需要适用于iOS和Android的产品,并且目前无法升级Xamarin.Forms或Forms9Patch,因此无法使用它们的任何新功能。我尝试使用File.Move,但是即使添加System和SystemIO,该功能甚至都无法识别。

如果它们适用于旧版本的Xamarin Forms,我也愿意接受其他建议。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。