Never mind, I found a work around here:
https://github.com/dotnet/maui/issues/10989#issuecomment-1304317816
This browser is no longer supported.
Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support.
I created a .Net MAUI app. I build it using Azure yaml pipeline. It works well when I install it on various devices from AppCenter. But when I try to push the iOS version to AppStore, it is rejected with many errors:
ITMS-90482: Invalid Executable - The executable 'MyApp.app/Frameworks/AppAuth.framework/AppAuth' contains bitcode.
ITMS-90482: Invalid Executable - The executable 'MyApp.app/Frameworks/FBAEMKit.framework/FBAEMKit' contains bitcode.
ITMS-90482: Invalid Executable - The executable 'MyApp.app/Frameworks/FBLPromises.framework/FBLPromises' contains bitcode.
ITMS-90482: Invalid Executable - The executable 'MyApp.app/Frameworks/FBSDKCoreKit.framework/FBSDKCoreKit' contains bitcode.
ITMS-90482: Invalid Executable - The executable 'MyApp.app/Frameworks/FBSDKCoreKit_Basics.framework/FBSDKCoreKit_Basics' contains bitcode.
ITMS-90482: Invalid Executable - The executable 'MyApp.app/Frameworks/FBSDKGamingServicesKit.framework/FBSDKGamingServicesKit' contains bitcode.
ITMS-90482: Invalid Executable - The executable 'MyApp.app/Frameworks/FBSDKLoginKit.framework/FBSDKLoginKit' contains bitcode.
ITMS-90482: Invalid Executable - The executable 'MyApp.app/Frameworks/FBSDKShareKit.framework/FBSDKShareKit' contains bitcode.
ITMS-90482: Invalid Executable - The executable 'MyApp.app/Frameworks/FacebookGamingServices.framework/FacebookGamingServices' contains bitcode.
ITMS-90482: Invalid Executable - The executable 'MyApp.app/Frameworks/FirebaseABTesting.framework/FirebaseABTesting' contains bitcode.
ITMS-90482: Invalid Executable - The executable 'MyApp.app/Frameworks/FirebaseAuth.framework/FirebaseAuth' contains bitcode.
ITMS-90482: Invalid Executable - The executable 'MyApp.app/Frameworks/FirebaseCore.framework/FirebaseCore' contains bitcode.
ITMS-90482: Invalid Executable - The executable 'MyApp.app/Frameworks/FirebaseCoreDiagnostics.framework/FirebaseCoreDiagnostics' contains bitcode.
ITMS-90482: Invalid Executable - The executable 'MyApp.app/Frameworks/FirebaseDynamicLinks.framework/FirebaseDynamicLinks' contains bitcode.
ITMS-90482: Invalid Executable - The executable 'MyApp.app/Frameworks/FirebaseFirestore.framework/FirebaseFirestore' contains bitcode.
ITMS-90482: Invalid Executable - The executable 'MyApp.app/Frameworks/FirebaseFunctions.framework/FirebaseFunctions' contains bitcode.
ITMS-90482: Invalid Executable - The executable 'MyApp.app/Frameworks/FirebaseInstallations.framework/FirebaseInstallations' contains bitcode.
ITMS-90482: Invalid Executable - The executable 'MyApp.app/Frameworks/FirebaseMessaging.framework/FirebaseMessaging' contains bitcode.
ITMS-90482: Invalid Executable - The executable 'MyApp.app/Frameworks/FirebaseRemoteConfig.framework/FirebaseRemoteConfig' contains bitcode.
ITMS-90482: Invalid Executable - The executable 'MyApp.app/Frameworks/FirebaseStorage.framework/FirebaseStorage' contains bitcode.
ITMS-90482: Invalid Executable - The executable 'MyApp.app/Frameworks/GTMAppAuth.framework/GTMAppAuth' contains bitcode.
ITMS-90482: Invalid Executable - The executable 'MyApp.app/Frameworks/GTMSessionFetcher.framework/GTMSessionFetcher' contains bitcode.
ITMS-90482: Invalid Executable - The executable 'MyApp.app/Frameworks/GoogleAPIClientForREST.framework/GoogleAPIClientForREST' contains bitcode.
ITMS-90482: Invalid Executable - The executable 'MyApp.app/Frameworks/GoogleDataTransport.framework/GoogleDataTransport' contains bitcode.
ITMS-90482: Invalid Executable - The executable 'MyApp.app/Frameworks/GoogleToolboxForMac.framework/GoogleToolboxForMac' contains bitcode.
ITMS-90482: Invalid Executable - The executable 'MyApp.app/Frameworks/GoogleUtilities.framework/GoogleUtilities' contains bitcode.
ITMS-90482: Invalid Executable - The executable 'MyApp.app/Frameworks/Protobuf.framework/Protobuf' contains bitcode.
ITMS-90482: Invalid Executable - The executable 'MyApp.app/Frameworks/absl.framework/absl' contains bitcode.
ITMS-90482: Invalid Executable - The executable 'MyApp.app/Frameworks/grpc.framework/grpc' contains bitcode.
ITMS-90482: Invalid Executable - The executable 'MyApp.app/Frameworks/grpcpp.framework/grpcpp' contains bitcode.
ITMS-90482: Invalid Executable - The executable 'MyApp.app/Frameworks/leveldb.framework/leveldb' contains bitcode.
ITMS-90482: Invalid Executable - The executable 'MyApp.app/Frameworks/nanopb.framework/nanopb' contains bitcode.
ITMS-90482: Invalid Executable - The executable 'MyApp.app/Frameworks/openssl_grpc.framework/openssl_grpc' contains bitcode.
Though you are not required to fix the following issues, we wanted to make you aware of them:
ITMS-90683: Missing purpose string in Info.plist - Your app’s code references one or more APIs that access sensitive user data, or the app has one or more entitlements that permit such access. The Info.plist file for the “MyApp.app” bundle should contain a NSLocationWhenInUseUsageDescription key with a user-facing purpose string explaining clearly and completely why your app needs the data. If you’re using external libraries or SDKs, they may reference APIs that require a purpose string. While your app might not use these APIs, a purpose string is still required. For details, visit: https://developer.apple.com/documentation/uikit/protecting_the_user_s_privacy/requesting_access_to_protected_resources.
I read a suggestion to build against xCode 14. Not sure how that should be done. I tried to replace vmImage in
pool:
vmImage: 'macOS-12'
demands:
- MSBuild
to 'macos-latest', but then task
dotnet publish /Users/runner/work/1/s/LATICRETE_MobileApp.sln -f:net6.0-ios -c:Debug -r ios-arm64 /p:ArchiveOnBuild=true /p:EnableAssemblyILStripping=false
fails with errors
Undefined symbols for architecture arm64... etc.
So I guess macOS-12 should stay. Please advise how I can solve this problem.
Never mind, I found a work around here:
https://github.com/dotnet/maui/issues/10989#issuecomment-1304317816