Когда я запускаю следующий код на прошивке 8.4 и 9.2 я получаю объект NSData jsonData
что 808 байт:IOS 9.2 авария с [[CJSONDeserializer десериализатора] deserializeAsDictionary:
NSData *jsonData = [[NSData alloc] initWithContentsOfURL:[NSURL URLWithString:urlString]];
Однако если бы я тогда кормить эту NSData объект в CJSONDeserializer. Я получаю сбой с iOS 9.2, но я получаю NSDictionary с iOS 8.4. например
NSDictionary *dictionary = [[CJSONDeserializer deserializer] deserializeAsDictionary:jsonData error:nil];
Примечание: на линии аварии объект NSData, по-видимому, изменяется - например, здесь:
- (id)deserializeAsDictionary:(NSData *)inData error:(NSError **)outError
{
if ([self _setData:inData error:outError] == NO)
inData
составляет 808 байт прошивки 8.4, но выглядит следующим образом в прошивкой 9.2:
, который, из-за нечетный адрес, я предполагаю, что означает, что объект не является правильно (перезаписан, возможно?).
Я пытаюсь выяснить проблему без накладных расходов на App транспортной безопасности, поэтому я NSAppTransportSecurity устанавливается следующим образом:
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
Я также обновил CJSONDeserializer до последней версии.
Любые другие предложения, в чем проблема.
Что является причиной, журнал аварии говорит? Я считаю, что результат не в правильном формате json. –