在Xamarin.iOS共享扩展名]中,我想将我选择的文件(如pdf,图像,word等)存储在NSUserDefaults中,当主应用程序启动时,我将拥有访问其中存储的文件。
这是我的文件类别:
方法的LoadItem中,我通过使用文件的[[byte []由对象创建。然后,为了将数据保存在NSUserDefaults中,我将对象转换为JSON,就像这样(通过使用Newtonsoft.Json库):public class MyClass { public string FileName { get; set; } public byte[] Content { get; set; } }
所以在DidSelectPost
string jsonString = JsonConvert.SerializeObject(myFileObject);
并且我将其设置为对象,例如:NSUserDefaults
NSUser.SetValueForKey(new NSString(myFileObject), new NSString("FileSharing" + count));
或
NSUser.SetValueForKey(new NSString(myFileObject), new NSString("FileSharing"+ count));
并且在我同步项目后:NSUser.Synchronize());
一切都很好,但是当
main application
打开时,新数据不在这里。string toDesralize = nSUser.StringForKey("FileSharing0");
我已经尝试了许多文件,但我发现此问题仅适用于高度较低的文件,不适用于14mb等文件。如何在中保存高高度的文件?还有其他方法可以完成相同的工作吗? 在Xamarin.iOS共享扩展程序中,我想将所选文件(如pdf,图像,word等)存储在我的NSUserDefaults中,当主应用程序启动时,我将可以访问其中存储的文件。 ...NSUserDefaults