2012-09-24 20 views
8

Od iOS 6 wersji, istnieją pewne właściwości i metody, które są nieaktualne IAD jak:nieruchomość i metody iOS 6 iAd przestarzałe

currentContentSizeIdentifier 
requiredContentSizeIdentifiers 
ADBannerContentSizeIdentifierPortrait 
ADBannerContentSizeIdentifierLandscape 

Więc co jest najlepszym sposobem wdrożenia teraz IAD zarówno orientacji? Czy powinniśmy teraz ręcznie zmienić rozmiar ramki widoku banera?

Odpowiedz

12

Moja aplikacja obsługuje tylko tryb poziomy (powinna również działać w trybie portretowym), a aplikacja iAd jest widoczna na górze aplikacji. I do tej pracy z iOS6 musiałem to zrobić:

W MonoTouch

storesAdBannerView = new ADBannerView(); 
storesAdBannerView.AutoresizingMask = UIViewAutoresizing.FlexibleWidth; 

Dla ObjC (co nie korzystałem), myślę, że to może być

[storesAdBannerView setAutoresizingMask:UIViewAutoresizingFlexibleWidth] 
+0

Och, masz rację, działa całkiem łatwo dzięki AutoresizingMask! – Yaman

+0

NIE. To nie działa. Jeśli usuniesz te przestarzałe linie kodu i dodasz NIC, nadal będzie działał tak dobrze, jak powyższe rozwiązanie. To wydawało się naprawić problem, ponieważ używasz 'ADBannerContentSizeIdentifierPortrait'. Jeśli korzystasz z krajobrazu, spowodowałoby to uszkodzenie Twojej aplikacji. –

2

Wygląda na to, że reklamy krajobrazu są nieco wycofywane. Zobacz: http://www.iphonedevsdk.com/forum/iphone-sdk-development/108118-landscape-iad-banners-in-ios-6-edit-landscape-phased-out-completely.html

Potrzebne jest dalsze potwierdzenie, ponieważ nie mogłem znaleźć żadnego dokumentu Apple dotyczącego tej zmiany.

+0

Tak ja Jestem całkiem zaskoczony, że nie ma alternatywy dla tych wycofań w Apple doc:/ – Yaman

+0

Fora programistów mówią, że to nie jest poprawne, i że reklamy krajobrazu są nadal obsługiwane w iOS6: https://devforums.apple.com/message/755532 # 755532 Jestem w stanie zmusić ich do pracy na iPhonie 5, ale iPad zawsze pokazuje 768 szerokości, a nie 1024, gdy jest w krajobrazie. – SmartyP

+1

Tak, potwierdzam, że działam w krajobrazie iAD. –

1

Widziałem 2 obejście tam: http://www.touch-code-magazine.com/iad-code-is-broken-in-ios6/ Testowany pierwsze rozwiązanie:

łatwe rozwiązanie tymczasowe - można szybko uzyskać dostęp do aplikacji, aby skompilować ponownie stosując tanie oszustwo, dodawania wyraźnie #import do plików gdzie masz dostęp currentContentSizeIdentifier i stałe nazwy wielkości. To powinno Ci pomóc, dopóki nie zmienisz swojej aplikacji, by korzystać z nowych funkcji automatycznego układu.

Działa poprawnie na Xcode 4.5 (test banera ok).