|
12 | 12 |
|
13 | 13 | @implementation ADJAttribution
|
14 | 14 |
|
| 15 | ++ (BOOL)supportsSecureCoding { |
| 16 | + return YES; |
| 17 | +} |
| 18 | + |
15 | 19 | - (id)initWithJsonDict:(NSDictionary *)jsonDict {
|
16 | 20 | self = [super init];
|
17 | 21 | if (self == nil) {
|
@@ -170,18 +174,19 @@ - (id)initWithCoder:(NSCoder *)decoder {
|
170 | 174 | return nil;
|
171 | 175 | }
|
172 | 176 |
|
173 |
| - self.trackerToken = [decoder decodeObjectForKey:@"trackerToken"]; |
174 |
| - self.trackerName = [decoder decodeObjectForKey:@"trackerName"]; |
175 |
| - self.network = [decoder decodeObjectForKey:@"network"]; |
176 |
| - self.campaign = [decoder decodeObjectForKey:@"campaign"]; |
177 |
| - self.adgroup = [decoder decodeObjectForKey:@"adgroup"]; |
178 |
| - self.creative = [decoder decodeObjectForKey:@"creative"]; |
179 |
| - self.clickLabel = [decoder decodeObjectForKey:@"click_label"]; |
180 |
| - self.costType = [decoder decodeObjectForKey:@"costType"]; |
181 |
| - self.costAmount = [decoder decodeObjectForKey:@"costAmount"]; |
182 |
| - self.costCurrency = [decoder decodeObjectForKey:@"costCurrency"]; |
183 |
| - self.jsonResponse = [decoder decodeObjectForKey:@"jsonResponse"]; |
184 |
| - |
| 177 | + self.trackerToken = [decoder decodeObjectOfClass:[NSString class] forKey:@"trackerToken"]; |
| 178 | + self.trackerName = [decoder decodeObjectOfClass:[NSString class] forKey:@"trackerName"]; |
| 179 | + self.network = [decoder decodeObjectOfClass:[NSString class] forKey:@"network"]; |
| 180 | + self.campaign = [decoder decodeObjectOfClass:[NSString class] forKey:@"campaign"]; |
| 181 | + self.adgroup = [decoder decodeObjectOfClass:[NSString class] forKey:@"adgroup"]; |
| 182 | + self.creative = [decoder decodeObjectOfClass:[NSString class] forKey:@"creative"]; |
| 183 | + self.clickLabel = [decoder decodeObjectOfClass:[NSString class] forKey:@"click_label"]; |
| 184 | + self.costType = [decoder decodeObjectOfClass:[NSString class] forKey:@"costType"]; |
| 185 | + self.costAmount = [decoder decodeObjectOfClass:[NSNumber class] forKey:@"costAmount"]; |
| 186 | + self.costCurrency = [decoder decodeObjectOfClass:[NSString class] forKey:@"costCurrency"]; |
| 187 | + NSSet<Class> *allowedClasses = [NSSet setWithObjects:[NSDictionary class], |
| 188 | + [NSString class], [NSNumber class], nil]; |
| 189 | + self.jsonResponse = [decoder decodeObjectOfClasses:allowedClasses forKey:@"jsonResponse"]; |
185 | 190 | return self;
|
186 | 191 | }
|
187 | 192 |
|
|
0 commit comments