Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MAUI iOS Publish to AppStore: Rejected because of BrowserEngineKit in use #24980

Closed
fabEps opened this issue Sep 28, 2024 · 4 comments
Closed
Labels
area-publishing Issues with the app packaging/publishing process (ipk/apk/msix/trimming) platform/iOS 🍎 t/bug Something isn't working

Comments

@fabEps
Copy link

fabEps commented Sep 28, 2024

Description

I'm currently not able anymore to publish my (two different) MAUI Apps to the Apple App Store, since it gets rejected:

Hello,
We noticed one or more issues with a recent delivery for the following app:
...
Please correct the following issues and upload a new binary to App Store Connect.
ITMS-91017: Invalid SDK usage - The following frameworks aren’t permitted for apps using an alternative web browser engine: [BrowserEngineKit].

I installed the new .NET 8 SDK 8.0.402 update and the new workloads on our Mac Mini Buildserver, to support Xcode 16: https://github.com/xamarin/xamarin-macios/releases/tag/dotnet-8.0.1xx-xcode16.0-8303.

In the xcrun command from the build log, I can see the forbidden framework as weak_framework: -weak_framework BrowserEngineKit (see complete logoutput).

I tried to uninstall several NuGets (AppCenter, Firebase Cloud Messaging, InAppBilling), without success.

There are also some other guys encountering this problem: https://stackoverflow.com/questions/79030828/maui-ios-publish-fails-net8-0-browserenginekit

My App uses the WebView control - I created a custom one, but it derives from Microsoft.Maui.Controls.WebView which PlatformView is MauiWKWebView (WKWebView) and this should be fine, yes?

Of course, this happens when I have an app release coming up.. So is there a workaround?

Steps to Reproduce

  1. Create new MAUI iOS App
  2. Use a simple WebView to display a website inside the app
  3. Build it on a mac with Xcode 16 and .NET 8 SDK 8.0.402
  4. Try to upload to TestFlight

Link to public reproduction project repository

No response

Version with bug

8.0.91 SR9.1

Is this a regression from previous behavior?

No, this is something new

Last version that worked well

8.0.80 SR8

Affected platforms

iOS

Affected platform versions

iOS 17/18

Did you find any workaround?

Yes, use

  1. dotnet workload install maui-mobile --version 8.0.402
  2. xCode 15.4

Relevant log output

Tool xcrun execution started with arguments: clang++ -mios-version-min=11.0 -isysroot /Applications/Xcode-16.0.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS18.0.sdk -arch arm64 /Users/abcdev/Bitbucket-Runner/atlassian-bitbucket-pipelines-runner/temp/fe89c362-9a92-5732-b36b-375dbddda50e/build/src/xyz.Members.App.Maui/obj/Release/net8.0-ios/ios-arm64/nativelibraries/aot-output/arm64/aot-instances.dll.o /Users/abcdev/Bitbucket-Runner/atlassian-bitbucket-pipelines-runner/temp/fe89c362-9a92-5732-b36b-375dbddda50e/build/src/xyz.Members.App.Maui/obj/Release/net8.0-ios/ios-arm64/nativelibraries/aot-output/arm64/System.Private.CoreLib.dll.o /Users/abcdev/Bitbucket-Runner/atlassian-bitbucket-pipelines-runner/temp/fe89c362-9a92-5732-b36b-375dbddda50e/build/src/xyz.Members.App.Maui/obj/Release/net8.0-ios/ios-arm64/nativelibraries/aot-output/arm64/aot-instances.dll.llvm.o /Users/abcdev/Bitbucket-Runner/atlassian-bitbucket-pipelines-runner/temp/fe89c362-9a92-5732-b36b-375dbddda50e/build/src/xyz.Members.App.Maui/obj/Release/net8.0-ios/ios-arm64/nativelibraries/aot-output/arm64/System.Private.CoreLib.dll.llvm.o /usr/local/share/dotnet/x64/packs/Microsoft.iOS.Runtime.ios-arm64.net8.0_18.0/18.0.8303/runtimes/ios-arm64/native/libxamarin-dotnet.a /usr/local/share/dotnet/x64/packs/Microsoft.NETCore.App.Runtime.Mono.ios-arm64/8.0.8/runtimes/ios-arm64/native/libSystem.Globalization.Native.a /usr/local/share/dotnet/x64/packs/Microsoft.NETCore.App.Runtime.Mono.ios-arm64/8.0.8/runtimes/ios-arm64/native/libSystem.IO.Compression.Native.a /usr/local/share/dotnet/x64/packs/Microsoft.NETCore.App.Runtime.Mono.ios-arm64/8.0.8/runtimes/ios-arm64/native/libSystem.Native.a /usr/local/share/dotnet/x64/packs/Microsoft.NETCore.App.Runtime.Mono.ios-arm64/8.0.8/runtimes/ios-arm64/native/libSystem.Net.Security.Native.a /usr/local/share/dotnet/x64/packs/Microsoft.NETCore.App.Runtime.Mono.ios-arm64/8.0.8/runtimes/ios-arm64/native/libSystem.Security.Cryptography.Native.Apple.a /usr/local/share/dotnet/x64/packs/Microsoft.NETCore.App.Runtime.Mono.ios-arm64/8.0.8/runtimes/ios-arm64/native/libicudata.a /usr/local/share/dotnet/x64/packs/Microsoft.NETCore.App.Runtime.Mono.ios-arm64/8.0.8/runtimes/ios-arm64/native/libicui18n.a /usr/local/share/dotnet/x64/packs/Microsoft.NETCore.App.Runtime.Mono.ios-arm64/8.0.8/runtimes/ios-arm64/native/libicuuc.a /usr/local/share/dotnet/x64/packs/Microsoft.NETCore.App.Runtime.Mono.ios-arm64/8.0.8/runtimes/ios-arm64/native/libmono-component-debugger-stub-static.a /usr/local/share/dotnet/x64/packs/Microsoft.NETCore.App.Runtime.Mono.ios-arm64/8.0.8/runtimes/ios-arm64/native/libmono-component-diagnostics_tracing-stub-static.a /usr/local/share/dotnet/x64/packs/Microsoft.NETCore.App.Runtime.Mono.ios-arm64/8.0.8/runtimes/ios-arm64/native/libmono-component-hot_reload-static.a /usr/local/share/dotnet/x64/packs/Microsoft.NETCore.App.Runtime.Mono.ios-arm64/8.0.8/runtimes/ios-arm64/native/libmono-component-marshal-ilgen-static.a /usr/local/share/dotnet/x64/packs/Microsoft.NETCore.App.Runtime.Mono.ios-arm64/8.0.8/runtimes/ios-arm64/native/libmonosgen-2.0.a /usr/local/share/dotnet/x64/packs/Microsoft.NETCore.App.Runtime.Mono.ios-arm64/8.0.8/runtimes/ios-arm64/native/libmono-component-hot_reload-static.a /usr/local/share/dotnet/x64/packs/Microsoft.NETCore.App.Runtime.Mono.ios-arm64/8.0.8/runtimes/ios-arm64/native/libmono-component-marshal-ilgen-static.a /usr/local/share/dotnet/x64/packs/Microsoft.NETCore.App.Runtime.Mono.ios-arm64/8.0.8/runtimes/ios-arm64/native/libmono-component-debugger-stub-static.a /usr/local/share/dotnet/x64/packs/Microsoft.NETCore.App.Runtime.Mono.ios-arm64/8.0.8/runtimes/ios-arm64/native/libmono-component-diagnostics_tracing-stub-static.a -framework Accelerate -framework Accounts -framework AddressBook -framework AddressBookUI -framework AdSupport -framework ARKit -framework AudioToolbox -framework AVFoundation -framework AVKit -framework CallKit -framework CFNetwork -framework CloudKit -framework Contacts -framework ContactsUI -framework CoreAudioKit -framework CoreBluetooth -framework CoreData -framework CoreFoundation -framework CoreGraphics -framework CoreImage -framework CoreLocation -framework CoreMedia -framework CoreMIDI -framework CoreML -framework CoreMotion -framework CoreSpotlight -framework CoreTelephony -framework CoreText -framework CoreVideo -framework DeviceCheck -framework EventKit -framework EventKitUI -framework ExternalAccessory -framework FileProvider -framework FileProviderUI -framework Foundation -framework GameController -framework GameKit -framework GameplayKit -framework GLKit -framework HealthKit -framework HealthKitUI -framework HomeKit -framework IdentityLookup -framework ImageIO -framework Intents -framework IntentsUI -framework IOSurface -framework JavaScriptCore -framework LocalAuthentication -framework MapKit -framework MediaAccessibility -framework MediaPlayer -framework MediaToolbox -framework Messages -framework MessageUI -framework Metal -framework MetalKit -framework MetalPerformanceShaders -framework MobileCoreServices -framework ModelIO -framework MultipeerConnectivity -framework NetworkExtension -framework NotificationCenter -framework OpenGLES -framework PassKit -framework PDFKit -framework Photos -framework PhotosUI -framework PushKit -framework QuartzCore -framework QuickLook -framework ReplayKit -framework SafariServices -framework SceneKit -framework Security -framework Social -framework Speech -framework SpriteKit -framework StoreKit -framework SystemConfiguration -framework Twitter -framework UIKit -framework UserNotifications -framework UserNotificationsUI -framework VideoSubscriberAccount -framework VideoToolbox -framework Vision -framework WatchConnectivity -framework WebKit -weak_framework Accessibility -weak_framework AccessorySetupKit -weak_framework AdServices -weak_framework AppClip -weak_framework AppTrackingTransparency -weak_framework AuthenticationServices -weak_framework AutomaticAssessmentConfiguration -weak_framework AVRouting -weak_framework BackgroundAssets -weak_framework BackgroundTasks -weak_framework BrowserEngineKit -weak_framework BusinessChat -weak_framework CarPlay -weak_framework Cinematic -weak_framework ClassKit -weak_framework CoreHaptics -weak_framework CoreLocationUI -weak_framework CoreNFC -weak_framework CryptoTokenKit -weak_framework DeviceDiscoveryExtension -weak_framework IdentityLookupUI -weak_framework LinkPresentation -weak_framework MediaSetup -weak_framework MetalFX -weak_framework MetalPerformanceShadersGraph -weak_framework MetricKit -weak_framework MLCompute -weak_framework NaturalLanguage -weak_framework NearbyInteraction -weak_framework Network -weak_framework OSLog -weak_framework PencilKit -weak_framework PHASE -weak_framework PushToTalk -weak_framework QuickLookThumbnailing -weak_framework SafetyKit -weak_framework ScreenTime -weak_framework SensitiveContentAnalysis -weak_framework SensorKit -weak_framework SharedWithYou -weak_framework SharedWithYouCore -weak_framework ShazamKit -weak_framework SoundAnalysis -weak_framework Symbols -weak_framework ThreadNetwork -weak_framework UniformTypeIdentifiers -weak_framework VisionKit -framework GSS -framework CFNetwork -framework Security /Users/abcdev/Bitbucket-Runner/atlassian-bitbucket-pipelines-runner/temp/fe89c362-9a92-5732-b36b-375dbddda50e/build/src/xyz.Members.App.Maui/obj/Release/net8.0-ios/ios-arm64/nativelibraries/main.arm64.o /Users/abcdev/Bitbucket-Runner/atlassian-bitbucket-pipelines-runner/temp/fe89c362-9a92-5732-b36b-375dbddda50e/build/src/xyz.Members.App.Maui/obj/Release/net8.0-ios/ios-arm64/nativelibraries/registrar.o -o /Users/abcdev/Bitbucket-Runner/atlassian-bitbucket-pipelines-runner/temp/fe89c362-9a92-5732-b36b-375dbddda50e/build/src/xyz.Members.App.Maui/obj/Release/net8.0-ios/ios-arm64/nativelibraries/xyz.Members.App.Maui -lcompression -dead_strip -lz -liconv -lcompression -lobjc -exported_symbols_list obj/Release/net8.0-ios/ios-arm64/mtouch-symbols.list�[0m
@fabEps fabEps added the t/bug Something isn't working label Sep 28, 2024
@ronanj2
Copy link

ronanj2 commented Sep 28, 2024

@ronanj2
Copy link

ronanj2 commented Sep 28, 2024

#24819

@ronanj2
Copy link

ronanj2 commented Sep 30, 2024

workaround: xamarin/xamarin-macios#21324 (comment)

@drasticactions
Copy link
Contributor

Yeah, this is an underlying SDK issue, which should be resolved when xamarin/xamarin-macios#21337 lands. And the workaround for unlinking BrowserEngineKit (xamarin/xamarin-macios#21324 (comment)) should be fine for now.

Duplicate of xamarin/xamarin-macios#21324

@drasticactions drasticactions closed this as not planned Won't fix, can't repro, duplicate, stale Oct 1, 2024
@samhouts samhouts added platform/iOS 🍎 area-publishing Issues with the app packaging/publishing process (ipk/apk/msix/trimming) labels Oct 1, 2024
@github-actions github-actions bot locked and limited conversation to collaborators Nov 1, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area-publishing Issues with the app packaging/publishing process (ipk/apk/msix/trimming) platform/iOS 🍎 t/bug Something isn't working
Projects
None yet
Development

No branches or pull requests

4 participants