со вчерашнего дня у меня есть ошибка в моем приложении, и я не понимаю, где она. На самом деле я почти уверен, что ничего не изменил и что вчера все работало отлично.
Я не собираюсь публиковать весь код, но я могу опубликовать свой первый ViewController, если хотите.
Проблема возникает в обоих ViewControllers. Я использую MGTwitterEngine-API для отправки сообщения в Twitter. Насколько я знаю, ошибка, вызывающая сбой, находится в следующей строке.
MGTwitterEngine *twiit = [[MGTwitterEngine alloc] initWithDelegate:self];
[twiit setUsername:usernamee password:passworde];
Я думал, что в этом нет ничего плохого. Я ошибся?
usernamee и passworde являются NSStrings.
Консоль возвращает:
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[MGTwitterEngine setUsername:password:]: unrecognized selector sent to instance 0x3911fb0'
Если есть вопросы или если невозможно решить проблему подобным образом, я бы согласился отправить кому-нибудь свой дырочный код для проверки. Это не очень сложно, и это просто необходимо для просмотра. До сих пор я просто отправляю код заслуживающим доверия людям со многими репутациями.
Кроме того, я уверен, что в MGTwitterEngine нет ничего плохого, поскольку я никогда не менял его код. Возможно, это сработало, и я даже скопировал новый MGTwitterEnginge в папку проекта.
О, а вот UIAction, который реагирует на нажатие кнопки и приводит к сбою приложения:
- (IBAction) post: (id) sender{
NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];
NSString *usernamee;
usernamee = [prefs stringForKey:@"name_preference"];
//everthing works great, I checked, that usernamee got the right Nsstring from the preference
NSString *passworde;
passworde = [prefs stringForKey:@"password_preference"];
MGTwitterEngine * twitter1 = [[MGTwitterEngine alloc] initWithDelegate:self];
[twitter1 setUsername:usernamee password:passworde];
NSLog(@"sendUpdate: connectionIdentifier = %@", [twitter1 sendUpdate:[@""stringByAppendingString:twittermessage.text]] ); //It is not important, if I use sendUpdate, getDirectMessagesSinceID and so on...
loadingActionSheet = [[UIActionSheet alloc] initWithTitle:@"Posting to Twitter..." delegate:nil
cancelButtonTitle:nil destructiveButtonTitle:nil otherButtonTitles:nil];
[loadingActionSheet showInView:self.view];
}