avisos preteridos no xcode e como lidar com a depreciação

if ([self respondsToSelector:@selector(dismissViewControllerAnimated:completion:)])
     {[[self presentingViewController] dismissViewControllerAnimated:YES completion:nil];} //post-iOS6.0
else {[self dismissModalViewControllerAnimated:YES];} //pre-iOS6.0

Eu estou fazendo o responde ao código seletor (acima) para lidar com métodos obsoletos. Dessa forma, meu aplicativo é compatível com versões mais antigas do iOS, mas recebo avisos no meu código dizendo: "'dismissModalViewControllerAnimated:' está obsoleto: primeiro preterido no iOS 6.0" Eu pessoalmente não gosto de nenhum aviso no meu código, mas mais importante, eu li em algum lugar que a Apple vai reclamar sobre avisos no seu código.

1) A Apple irá reclamar de avisos no seu código?

2) Estou lidando com métodos depreciados corretamente?

3) Há algum modo de desativar os avisos de método de método descontinuados?

questionAnswers(3)

yourAnswerToTheQuestion