В Xamarin. iOS Расширение общего доступа . Я хочу сохранить выбранные файлы (например, pdf, изображения, word et c.) В моих NSUserDefaults и когда основное приложение запустится, я получу доступ к файлам, хранящимся в нем.
Вот мой класс файлов:
public class MyClass {
public string FileName { get; set; }
public byte[] Content { get; set; }
}
Так что в LoadItem в DidSelectPost я создаю объект с помощью байт [] файлов. Затем для сохранения данных в NSUserDefaults я конвертирую свой объект в JSON следующим образом (используя Newtonsoft. Json library ):
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());
Все идет хорошо, но когда открывается главное приложение , новых данных здесь нет.
string toDesralize = nSUser.StringForKey("FileSharing0");
Я пробовал много файлов, и Я обнаружил, что эта проблема работает только для файлов с небольшой высотой и не работает для файлов, таких как 14 МБ. Как я могу сохранить файлы с большой высотой в NSUserDefaults ? Есть ли другой способ сделать ту же работу?