Я использую Facebook iOS SDK для проекта, и, если я получаю UIViewController после выполнения запроса, но перед получением ответа, я получаю EXC_BAD_ACCESS, когда он пытается увидеть, отвечает ли делегат на селектор.Ну, делегат UIViewController уже запущен, поэтому он, вероятно, больше не существует.
При исследовании этой проблемы я наткнулся на этот ответ здесь на SO, который говорит мне, что я не должениметь эту проблему, так как делегат сохраняется.Но ответ немного стар, и после этого они начали использовать дугу.Поэтому я проверил SDK и заметил, что они больше не сохраняют его.
Это известная проблема?Я что-то здесь упускаю?
Я попытался изменить SDK и сохранить делегата, и проблема исчезла.Тем не менее, я не люблю модифицировать сторонние библиотеки, поскольку у меня нет такого большого опыта, и я не уверен, действительно ли дуга является проблемой в этой ситуации (я думал, что нам не нужно использовать retaing / release / autoreleaseбольше).Кроме того, я подумал, что это Facebook SDK, если бы это была ошибка, кто-то должен был наткнуться на ту же проблему и решить ее.
РЕДАКТИРОВАТЬ: теперь я понимаю, что, по крайней мере, я использую версию SDK Facebookне использует дугу (я не знаю, поддерживают ли они это уже), и проблема может быть в следующем:
@property(nonatomic,assign) id<FBRequestDelegate> delegate;
Разве это не должно быть сохранено?
EDIT2: Яизвините, я пропустил другой ответ в том же посте, связанном ранее.
Кажется, то, что я указал, теперь устарело в новых версиях SDK.Похоже, что лучше всего отменить запрос.