RestKit weird error - objective-c

I have been up and running with RestKit for ios and I feel it is great. But, I have some serious problem. I am trying to use the objectmapper in a application. While a test application with only a single view controller works fine and is able to load all the data in array. But, I try to integrate into the existing application, it always crashes with error ;
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSCFString objectForKey:]: unrecognized selector sent to instance 0x8b55e90'
I have a core data datamodel but I have not used it for the mapping until. The code in both the test application and the existing app are same. It is annoying that the same code works fine with a single view controller while the same things does not work for integration. Any help would be much appreciated !

"unrecognized selector sent to instance" usually means that you are trying to call a method on an object that is no longer existent in memory. First you need to find out which object this is by enabling zombies in xcode.
Then you have to make sure that this object persists as long as you need it, e. g. make it a property of the parent view controller.

There was error because I was using RestKit Object loader and RestKit client to load two different urls from the same controller at the same time. And both of them would call the request delegate at first. So, the json I was expecting the requestDidLoad delegate was different as it also loaded the same delegate for objectDidLoad at first. This has been fixed now.

Related

unrecognized selector sent to instance (_setViewDelegateContentOverlayInsetsAreClean)

It looks like there is a lot of way to get this error. I couldn't find any solution that worked in my case. The difference with most thread with the same error, is that the view that throw the error is my initial view and not called by a segue.
Here Is my error log:
Tabuleo[87837:3767493] -[loginViewController _setViewDelegateContentOverlayInsetsAreClean:]:
unrecognized selector sent to instance 0x7fb513d104e0
2018-07-03 13:37:25.365645+0200 Tabuleo[87837:3767493]
*** Terminating app due to uncaught exception
'NSInvalidArgumentException', reason: '-[loginViewController _setViewDelegateContentOverlayInsetsAreClean:]:
unrecognized selector sent to instance
I can't figure out by myself where it comes from because in my code I don't have any method called "_setViewDelegateContentOverlayInsetsAreClean".
At this point I don't have any clue and I read almost all post related to that.
My code is about 350 lines so I put a link to download it if it helps.
loginViewController.m
Thanks for your help.
I figured it out finally.
I don't know exactly where it was messed up but redo every link of my elements in my storyboard for this view finally ended up working !
So if that happen just redo your links from storyboard to .h file.

Objective-C parsing JSON NSNULL error, location not shown

I am parsing quite a large JSON model, and I have a LOT of objects set up to handle all the data. I recently added more data to the JSON model, to test it out, and I am getting this error
-[NSNull count]: unrecognized selector sent to instance 0xaed678
However, I need to know EXACTLY which function is crashing in order to fix it, but for some reason, xCode does not tell you where the function crashes which seems very odd, as that is very important information if you want to rectify the bug. Is there anyway for me to find out exactly which method or function caused the application to crash?
Thanks in advance
Set a breakpoint on unrecognized selector:
Creating breakpoint in Xcode for unrecognized selector
Then trace back in the code.

How to use Xcode output to determine source of crash?

I have the following output from my app at the moment:
2012-09-14 11:55:32.558 projectname[2172:707] -[__NSCFBoolean isEqualToString:]:
unrecognized selector sent to instance 0x3ec4ba18
2012-09-14 11:55:32.570 projectname[2172:707] *** Terminating app due to uncaught
exception 'NSInvalidArgumentException', reason: '-[__NSCFBoolean isEqualToString:]:
unrecognized selector sent to instance 0x3ec4ba18'
*** First throw call stack:
(0x3263788f 0x3468d259 0x3263aa9b 0x32639915 0x32594650 0x41e47 0x417d3 0x46af7
0x320beefb 0x320bdfd9 0x320bd763 0x32061f15 0x325961fb 0x342faaa5 0x342fa6bd
0x342fe843 0x342fe57f 0x342f64b9 0x3260bb1b 0x32609d57 0x3260a0b1 0x3258d4a5
0x3258d36d 0x316e4439 0x3208ccd5 0x17e77 0x15ca4)
terminate called throwing an exception
I can see that the problem is that I'm trying to compare a BOOL to an NSString, the comparison is on data from a web service and it's always been BOOL before now. That's besides the point in this case anyway.
What information is in that log that can actually help me find the line of code that's causing the problem? I can see which instances (e.g. 0x3ec4ba18) are causing it but the log doesn't even tell me what type they are, let alone a line number.
Add an exception breakpoint by going to the exceptions pane (in the left sidebar), clicking the + and selection "Exception breakpoint". Then when you run the debugger will pause where the exception is actually thrown rather then when it is caught (or rather uncaught) at the top level.
There are many tutorials on this, Raywinderlich has one of good tutorial for determining crash from the console log..
Here you can get them..
My App Crashed, Now What? – Part 1
My App Crashed, Now What? – Part 2
After following these, come to know the specific reason of crash then google for this, you can resolve it easily.

App terminates due to uncaught exception

My app was working fine until I added another tab to the tab bar controller. I got SIGABRT. Then I undid everything to try and get it working again and now get this
*** Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[ setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key view.'
Can anyone help?
Open your xib file(s) in Interface Builder and see if there are IBOutlets that got disconnected when you deleted your tab before. It's trying to connect an outlet that probably doesn't exist anymore.
[UIRuntimeOutletConnection connect]
Are you working with a NSDictionary ?
Be sure that you're working with Mutable object. This error can happen if you're inserting into a NSDictionary (instead of a NS*Mutable*Dictionary).
If not, maybe youre tab control indirectly use Dictionary

I am using core plot and I am getting an error

I am using core plot and I am getting an error
"'*** -[UIView setHostedLayer:]: unrecognized selector sent to instance 0xf283a0'"
at line
hostingView.hostedLayer = graph;
I had this problem too! I just figured out the solution: you need to open up the xib file for your view controller class, the one where you setup the pie chart, and in there you will need to select the view, then make the view a CPLayerHostingView type. If you're unsure how to do this, go to the "Identity Inspector" window, and under Class Identity (the first item in the Identity Inspector window, enter CPLayerHostingView for the "class" value. When you do this, the view will then be labelled as "Layer Hosting View". Save and close the .xib, then go back to Xcode and build. It should work at that point.
Sorry if this way is extraneous and there is a better way, but this is how I finally got it to work. Hit me up if you have any further questions or need more explanation. Good luck!
Andy
Make your View a CPTGraphHostingView. It worked for me.
I got the same error, but it was due to typecasting of UIView into CPGraphHostingView. I got the solution at this link:
Error: "-[UIView setHostedGraph:]: unrecognized selector" while executing the core plot in iPhone app
You hostingView has to be a CPLayerHostingView, not a generic UIView. Make sure it is specified correctly in Interface Builder or in your setup code if you're creating it manually.
I was upgrading to the latest version of CorePlot (as of 1-9-2012) and had this error.
-[UIView setCollapsesLayers:]: unrecognized selector sent to instance
I found that my view was still set to the old CPGraphHostingView, even though it had been replaced in the code with the new version. From the tip above, I changed the view to the new value of CPTGraphHostingView.
Notice in the new version of CorePlot the name prefixes were changed from "CP" to "CPT".