I get the below error hor no apparent reason, I would try to fix it myself but I can’t understand what it means. Does anyone else understand it? Here is the error and below it is the code.
Error: Receiver Type ‘NSdata’ for instance message does not declare a method with selector type ‘EncryptAES:’
I have added a comment to the line with the error on it:
//Change the Input String to Data
NSData *objNSData = [NSData dataWithData:[Input dataUsingEncoding: NSUTF8StringEncoding]];
//Encrypt the Data
[objNSData EncryptAES:Keyword.text]; //Error appears here
NSString *InputString = [[NSString alloc] initWithData:objNSData encoding:NSUTF8StringEncoding];
What does this mean, why is it happening and what can I do to fix it?
And, what is an instance message?
The problem here is that
NSDatadoes not respond to theEncryptAES:selector. You can only invoke selectors that exist on the class. With the Objective-C runtime’s loose typing, you can also invoke a selector on a class that does not respond to said selector, as long as the selector appears in the implementation of at least one other class that the compiler is working with.All standard
NSDatamethods can be found on the NSData Class Reference. Apple has sample code for encryption, but it is not built-in toNSData.