的Xcode 8.1部署目標的iOS 9.0NSJSONSerialization isValidJSONObject返回從地點搜索終端接收到的數據錯誤
我越來越緊湊的場地對象的數組從Foursquare的地點搜尋端點預期...
- (void)URLSession:(NSURLSession *)session dataTask:(NSURLSessionDataTask *)dataTask didReceiveData:(NSData *)data
當我檢查使用...的數據對象
if ([NSJSONSerialization isValidJSONObject:data])
我得到一個錯誤。
有人能告訴我這裏有什麼問題嗎?
編輯: 下面是完整的,如果塊...(添加類型強制轉換爲數據中,如果塊之後)
id foundationObject;
NSLog(@"data:- %@",data);
if ([NSJSONSerialization isValidJSONObject:(id)data])
{
foundationObject = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:nil];
NSLog(@"venues foundation object:- %@",foundationObject);
}
此前的代碼沒有IF塊。只是......有人
id foundationObject = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:nil];
的變化,當我意識到(使用斷點只是上述聲明後),其foundationObject是零,即使數據沒有。
注意:在我三月份發佈iOS 9.x版本的應用程序時,此工作正常。被稱爲Venue Endpoint的版本是否會有所作爲?
打招呼。我編輯了這個問題。請檢查。已經在做你提到的。 – AceN
請檢查我的答案。你沒有做我在答案中提到的。您沒有將'NSError'對象傳遞給該方法。當你這樣做的時候,你會得到錯誤的值,說明出了什麼問題。我會編輯它以給你一個明確的答案,以找出它出錯的地方。 – KrishnaCA
好!現在明白了!愚蠢的錯誤... – AceN