iOS 6 e iAds dando demasiadas advertencias

Aquí está mi código de iAd y recibo advertencias sobre

setRequinetworkingContentSizeIdentifiers - deprecated in iOS 6 ADBannerContentSizeIdentifier320x50 - deprecated in iOS 4.2 ADBannerContentSizeIdentifier480x32 - deprecated in iOS 4.2 setCurrentContentSizeIdentifier - deprecated in iOS 6 ADBannerContentSizeIdentifier480x32 - deprecated in iOS 4.2 

¿Cómo soluciono esto para que no haya advertencias?

 - (int)getBannerHeight:(UIDeviceOrientation)orientation { if (UIInterfaceOrientationIsLandscape(orientation)) { return 32; } else { return 50; } } - (int)getBannerHeight { return [self getBannerHeight:[UIDevice currentDevice].orientation]; } - (void)createAdBannerView { Class classAdBannerView = NSClassFromString(@"ADBannerView"); if (classAdBannerView != nil) { self->adView = [[classAdBannerView alloc] initWithFrame:CGRectZero]; [adView setRequinetworkingContentSizeIdentifiers:[NSSet setWithObjects: ADBannerContentSizeIdentifier320x50, ADBannerContentSizeIdentifier480x32, nil]]; if (UIInterfaceOrientationIsLandscape([UIDevice currentDevice].orientation)) { [adView setCurrentContentSizeIdentifier: ADBannerContentSizeIdentifier480x32]; } else { [adView setCurrentContentSizeIdentifier: ADBannerContentSizeIdentifier320x50]; } [adView setFrame:CGRectOffset([adView frame], 0, -[self getBannerHeight])]; [adView setDelegate:self]; [self.view addSubview:adView]; } } - (void)fixupAdView:(UIInterfaceOrientation)toInterfaceOrientation { if (adView != nil) { if (UIInterfaceOrientationIsLandscape(toInterfaceOrientation)) { [adView setCurrentContentSizeIdentifier: ADBannerContentSizeIdentifier480x32]; } else { [adView setCurrentContentSizeIdentifier: ADBannerContentSizeIdentifier320x50]; } [UIView beginAnimations:@"fixupViews" context:nil]; if (bannerIsVisible) { CGRect adBannerViewFrame = [adView frame]; adBannerViewFrame.origin.x = 0; adBannerViewFrame.origin.y = 0; [adView setFrame:adBannerViewFrame]; CGRect contentViewFrame = _contentView.frame; contentViewFrame.origin.y = [self getBannerHeight:toInterfaceOrientation]; contentViewFrame.size.height = self.view.frame.size.height - [self getBannerHeight:toInterfaceOrientation]; _contentView.frame = contentViewFrame; } else { CGRect adBannerViewFrame = [adView frame]; adBannerViewFrame.origin.x = 0; adBannerViewFrame.origin.y = -[self getBannerHeight:toInterfaceOrientation]; [adView setFrame:adBannerViewFrame]; CGRect contentViewFrame = _contentView.frame; contentViewFrame.origin.y = 0; contentViewFrame.size.height = self.view.frame.size.height; _contentView.frame = contentViewFrame; } [UIView commitAnimations]; } } 

Estás usando methods / símbolos en desuso .

La depreciación significa que los methods / símbolos todavía están aquí, y por lo general seguirán funcionando, pero pueden eliminarse en futuras versiones de iOS.

La documentation oficial siempre enumera los methods / símbolos en desuso, y generalmente proporciona los nuevos.

Entonces odio decir esto, como una respuesta, pero acabo de leer el documento .

Las advertencias sobre iOS 6 no son tan malas, ya que iOS 6 es bastante nuevo.
Pero también los arregla si puedes. Lo hecho, hecho está.

¡Pero parece que también estás usando methods / símbolos que fueron desaprobados en iOS 4.2!
Esto es realmente una preocupación. El soporte de iOS 4 está disminuyendo actualmente, por lo que su código real podría no funcionar por mucho time.

Lea el documento (nuevamente), aprenda sobre los nuevos methods y corrija su código.

Por ejemplo:

 ADBannerContentSizeIdentifier320x50 - deprecated in iOS 4.2 

En la documentation , puede leer lo siguiente:

ADBannerContentSizeIdentifier320x50 Indica que la vista de banner es de 320 puntos por 50 puntos de tamaño. Este tamaño se usa en iPhone para anuncios retratos. (Desaprobado. Use ADBannerContentSizeIdentifierPortrait en su lugar.) Disponible en iOS 4.0 y posterior. Despojado en iOS 4.2. Declarado en ADBannerView_Deprecated.h.

Entonces, en lugar de ADBannerContentSizeIdentifier320x50 , simplemente use ADBannerContentSizeIdentifierPortrait .
Lo mismo para ADBannerContentSizeIdentifier480x32 . Use ADBannerContentSizeIdentifierLandscape en ADBannerContentSizeIdentifierLandscape lugar.

Entonces estarás a salvo y ya no tendrás una advertencia sobre esto.

Luego, simplemente haz lo mismo con los otros símbolos.

EDITAR


Como se indica en su comentario, ADBannerContentSizeIdentifierPortrait y ADBannerContentSizeIdentifierLandscape también están en desuso en iOS 6.

Esto está relacionado con la desaprobación de setCurrentContentSizeIdentifier y setRequinetworkingContentSizeIdentifiers .

Apple recomienda no usar ese enfoque más, y usar las capacidades de cambio de tamaño automático de iOS.