天天看點

NSInvalidArgumentException’, reason: ‘data parameter is nil

今天偶然間發現程式每次都報

*** Terminating app due to uncaught exception ‘NSInvalidArgumentException’, reason: ‘data parameter is nil’***

的錯誤。似乎是NSData的問題,用排除法分析了一下,原來是NSJSONSerialization使用沒注意。我的程式會在每次啟動的時候通過iTunes的lookup查詢版本資訊,然後用NSJSONSerialization解析lookup傳回的json資料。由于今天iTunes被qiang了,傳回不了json資料,傳回的NSData是個空值。我也沒校驗,直接就

[NSJSONSerialization JSONObjectWithData:jsonData options:NSJSONReadingAllowFragmentserror:&error];
           

結果就報上面的錯誤了,解決方法是提前判斷jsonData是否為空,如果不為空,就對資料進行出去,否則不處理。