Xamarin.ios 为Xamarin表单使用PCLStorage时,ios本地存储在哪里?
我正在使用PCLStorage将映像存储在localStorage中,并通过返回的路径访问它们 它工作正常,但问题是,每当我再次开始调试应用程序时,图像都无法访问 它在本地存储器中的实际存储位置?这不是永久性的位置吗? 我想在文件系统中存储图像,在sqlite中存储相关数据和图像路径。它是一个离线应用程序,因此需要永久存储此数据 任何关于这方面的建议都会有所帮助 谢谢尝试以下步骤 这个接口相当简单,因为在将映像保存到磁盘时,我们只对传递字节数组和文件名感兴趣Xamarin.ios 为Xamarin表单使用PCLStorage时,ios本地存储在哪里?,xamarin.ios,xamarin.forms,portable-class-library,Xamarin.ios,Xamarin.forms,Portable Class Library,我正在使用PCLStorage将映像存储在localStorage中,并通过返回的路径访问它们 它工作正常,但问题是,每当我再次开始调试应用程序时,图像都无法访问 它在本地存储器中的实际存储位置?这不是永久性的位置吗? 我想在文件系统中存储图像,在sqlite中存储相关数据和图像路径。它是一个离线应用程序,因此需要永久存储此数据 任何关于这方面的建议都会有所帮助 谢谢尝试以下步骤 这个接口相当简单,因为在将映像保存到磁盘时,我们只对传递字节数组和文件名感兴趣 public interface I
public interface IPicture
{
void SavePictureToDisk (string filename, byte[] imageData);
}
DependencyService将图像保存委托给相应的类。DependencyService的用法是:
DependencyService.Get<IPicture>().SavePictureToDisk("ImageName", GetByteArray());
我在Xamarin论坛上得到了这个问题的答案,所以只要更新这里的链接,它就能帮助其他人 正如这里所解释的,每次我们重新部署应用程序时,核心路径都会发生变化,这就是为什么在重新部署时,我无法在保存它的路径上找到图像。因此,现在我只保存部分路径,如folderName \映像名和我在运行时找到的核心路径的其余部分
这就解决了我的问题。谢谢你的回复。我知道我们可以使用依赖服务来完成。但我只是想知道这里解释的PCLStorage。这对我来说很好,但我面临的唯一问题是重新调试应用程序时无法访问图像。否则,在关闭应用程序并在设备中重新启动应用程序后,其工作正常。所以我想知道PCLStorage实际上在哪里存储图像?
[assembly: Xamarin.Forms.Dependency(typeof(Picture_iOS))]
namespace ImageSave.iOS
{
public class Picture_iOS: IPicture
{
public void SavePictureToDisk(string filename, byte[] imageData)
{
var MyImage = new UIImage(NSData.FromArray(imageData));
MyImage.SaveToPhotosAlbum((image, error) =>
{
//you can retrieve the saved UI Image as well if needed using
//var i = image as UIImage;
if(error != null)
{
Console.WriteLine(error.ToString());
}
});
}
}
}