jjzjj

NSSecureCoding

全部标签

ios - 解析和 watchkit 扩展

我正在使用WatchKit构建一个应用程序,并想用我在类里面的PFObjects中的数据填充一个表,但我收到了这个错误:Terminatingappduetouncaughtexception'NSInvalidUnarchiveOperationException',reason:'ThisdecoderwillonlydecodeclassesthatadoptNSSecureCoding.Class'PFObject'doesnotadoptit.'遇到与thispost相同的问题 最佳答案 您是否考虑过为采用NSSecure

ios - 通过 NSSecureCoding 解码 NSArray 时的奇怪行为

我整个下午都在用头撞墙试图弄清楚为什么这个类的解码失败。该类有一个属性是Foo对象的NSArray。Foo符合NSSecureCoding,我已经成功地自行编码和解码了该类。我在initWithCoder中收到一个错误:表示未能解码类Foo。通过一些实验,我发现我需要将[Fooclass]添加到initWithCoder:才能使其工作。也许这会帮助遇到同样问题的其他人。我的问题是,为什么这是必要的?我没有发现苹果文档中有必要这样做的建议。#import"Foo.h"@interfaceMyClass:NSObject@property(nonatomic)NSArray*bunchOf

ios - 尝试在 SpriteKit 编辑器中使用 GKComponent 子类会在保存时静默崩溃 Xcode

我正在尝试使用Xcode中的场景编辑器来处理GameplayKit和SpriteKit。我是SpriteKit的新手,之前也没有使用过NSSecureEncoding。老实说,Swift还是个新手。我有一个基本的GKComponent子类,其中一个整数一个字符串属性是这样实现的。importFoundationimportGameplayKit@objcclassBasicComponent:GKComponent{@GKInspectablevarnumber:Int=0@GKInspectablevartext:String=""structCoderKeys{staticlets

ios - Swift Action 扩展 NSString 错误?

我是Swift新手!所以我在Swift中构建一个Action扩展并出现错误itemProvider.loadItemForTypeIdentifier(kUTTypePropertyListasNSString,options:nil,completionHandler:{[unownedself](result:NSSecureCoding!,error:NSError!)->Voidin错误似乎出在NSString上。错误如下:“NSString”不能简单地转换为“String”:你是想使用“as”来显式转换吗我将它的NSString更改为kUTTypePropertyListas

ios - 使用解码对象(: forKey:) to decode an object that conforms to a protocol

我有一个Objective-C协议(protocol),需要符合NSSecureCoding:@protocolMyProtocol…@end我有一个父对象,它存储对符合MyProtocol的对象的引用,我希望父对象也符合NSSecureCoding。当我尝试这个时:requiredinit?(coderaDecoder:NSCoder){ifletchildObject=aDecoder.decodeObject(of:MyProtocol.self,forKey:"childObject"){self.childObject=childObject}else{returnnil}}

ios - 使用 NSSecureCoding 编码/解码 NSArray 时出现意外类错误

背景我们有多个符合NSSecureCoding协议(protocol)的类。@interfaceClassA:NSObject//...@end@interfaceClassB:NSObject//...@end我们注意到NSArray也符合NSSecureCoding。因此,我们尝试以下方法。对于编码:NSArray*array=...[archiverencodeObject:arrayforKey:@"AirdropDataKey"];解码NSArray*array=[unarchiverdecodeObjectOfClass:[NSArrayclass]forKey:@"Air

ios - 如何在 Action Extension 中将 NSSecureCoding 转换为 MKMapItem

我正在尝试为我的应用制作一个Action扩展,用户可以在其中添加他的当前位置以及一些其他数据。在与AppleMapsApp共享位置后,我调试了扩展程序,发现Maps发送了四个提供程序,内容如下:所选地点的名片所选位置的ApplemapURL纯文本,即所选位置的名称一个MKMapItem以上内容均为NSSecureCoding类型。强制转换为Data并使用vCard的数据初始化String,为纯文本和url的String从NSSecureCoding成功,但我没有找到了一种方法,可以根据我收到的数据创建一个MKMapItem对象。这是我尝试过的:provider.loadItem(for

share - 'NSSecureCoding !' is not a subtype of ' NSURL' 在尝试替换闭包参数类型时使用 Swift

我正在使用loadItemForTypeIdentifier:options:completionHandler:NSItemProvider对象上的方法,用于通过iOS8中的共享扩展从Safari中提取url。在Objective-C中,这段代码编译并工作:[itemProviderloadItemForTypeIdentifier:(@"public.url"options:nilcompletionHandler:^(NSURL*url,NSError*error){//Mycode}];然而,在Swift中,我得到了“NSSecureCoding!”isnotasubtypeo

ios - 将 NSSecureCoding 转换为 NSData - Xcode - Swift

我有一些代码可以创建一个名为“content”的NSSecureCoding变量,我想将该变量转换为NSData,然后可以将其制作成UIImage或发送到本地服务器。我该如何正确转换?我想要这个用于我在我的iOS应用程序中制作的共享扩展,因此当您在照片上按共享时,它会获取照片内容并将其转换为NSData。这是我的代码:inputItem=extensionContext!.inputItems.firstasNSExtensionItemattachment=inputItem.attachments![0]asNSItemProviderif(attachment.hasItemCo

ios - 使用 NSSecureCoding 强制类型

我决定使用NSSecureCoding而不是NSCoding,但我无法让它正常工作。我预计以下代码会失败,因为我正在编码NSString但试图解码NSNumber。然而,该对象在没有抛出异常的情况下被初始化。+(BOOL)supportsSecureCoding{returnYES;}-(instancetype)initWithCoder:(NSCoder*)coder{//prints'1'asexpectedNSLog(@"%d",coder.requiresSecureCoding);//unexpectedlyprints'foo'(expectingcrash)NSLog(
12