Xamarin iOS: UIWebView Deprecation megoldása

Április 30-tól az AppStore-ba nem tölthetjük fel az UIWebView implementációt tartalmazó binárisainkat. Erről korábban írtam már a blogon, hogy miért problémás, a Xamarin fejlesztésnél ez a történet.

Amennyiben sikerült felimádkoznunk a legfrissebb csomagokat a Solutionre, abban az esetben az iOS projekt mtouch argumentumai közé a következőt kell beállítanunk:

--optimize=experimental-xforms-product-type 

Figyelni kell rá, hogy ahol CustomWebViewRenderer-t használunk, ott az ősosztály ne WebViewRenderer legyen, hanem WKWebViewRenderer.

Ezen felül a linking-nél a linker behaviourt vagy Link all, vagy Link Framework SDK-s only-ra kell állítani.

AppStore publish error: ITMS-90809 (Deprecated API Usage WebView-re [Xamarin])

Alkalmazás publikálásánál az AppStore-ban a következőt jelzi vissza az Apple:

ITMS-90809: Deprecated API Usage - Apple will stop accepting submissions of apps that use UIWebView APIs . See https://developer.apple.com/documentation/uikit/uiwebview for more information.

Ez azért van, mert a Xamarin Forms WebView implementációja a Xamarin Forms 4.4-es verziójánál kisebb verziókban a UIWebView-t használja platformspecifikus implementációként. (Forrás: https://docs.microsoft.com/en-us/xamarin/xamarin-forms/user-interface/webview?tabs=windows#performance)

"Therefore, since Xamarin.Forms 4.4, the Xamarin.Forms WebView is implemented on iOS by the WkWebView class, which supports faster browsing."

Főverzió frissítése után nem szabad dobnia a hibát a publikálásnál. Az alkalmazás publikálása ettől függetlenül végbemegy, amennyiben csak ez a hiba

AppStore publish error: ITMS-90717 (Alpha csatornás PNG ikon)

Transporter app-al való alkalmazásfeltöltésnél az AppStore-ba hibát dob:

ERROR ITMS-90717: "Invalid App Store Icon. The App Store Icon in the asset catalog in 'SimpleTaxiOrderXamarin.iOS.app' can't be transparent nor contain an alpha channel."

Ebben az esetben nem az info.plist-ben lévő iTunes Artworkot kell módosítani, hanem az alkalmazás ikonjának kiválasztott AssetCatalogban lévő AppStore ikonokat.

Hasznos tool az alkalmazás ikonok elkészítéséhez: https://appicon.co/