Хранение NSArray в UIPasteboard
У меня есть несколько текстовых файлов, которые я хочу передать между двумя приложениями. (т.е. бесплатные и платные версии одного и того же приложения).
Я использую UIPasteboard для этого. Содержимое файлов хранится в памяти как NSArrays, и поэтому я хочу скопировать эти NSArrays в монтажную панель (облегченная версия) и прочитать их из монтажной панели (полная версия).
По какой-то причине данные не могут быть прочитаны обратно из монтажного стола. Данные возвращаются как объект NSData, а не как NSArray, что, как я думаю, означает, что они не в требуемом формате для используемого мной типа монтажной панели, то есть public.utf8-plain-text.
Когда я читаю / пишу строки NSStrings с этим типом монтажной панели, все работает нормально.
Я искал документы Apple и т. Д., Чтобы выяснить, есть ли другой тип, который я должен использовать для NSArrays (или других объектов списка свойств), но нарисовал пустым.
Запись в монтажную панель: (В следующем pDataOutput это массив строк, содержимое файла):
NSMutableArray *lArrayCopy = [gGlobalData.cPasteBoard.items mutableCopy];
[lArrayCopy replaceObjectAtIndex:pDataFileIdx
withObject:[NSDictionary dictionaryWithObject:pDataOutput
forKey:@"public.utf8-plain-text"]];
gGlobalData.cPasteBoard.items = lArrayCopy;
[lArrayCopy release];
Чтение с картона:
NSArray *lPBItems = [pPasteBoard valuesForPasteboardType:@"public.utf8-plain-text"
inItemSet:nil];
NSLog(@"PB Items = NSArray of count %d", lPBItems.count);
Вышеуказанное возвращает:
PB Items = NSArray of count 0
Как упоминалось выше, он возвращает данные правильно как NSStrings, если они записаны как NSStrings.
Любая помощь будет очень высоко ценится. Спасибо Стивену С