Does Zoom iOS SDK support Xcode 11.3?
The reason that why I am asking this is I couldn’t find ‘Linked Binaries’ and ‘Linked Frameworks’ sections in the Xcode 11. What is the correct way to do it in Xcode11? Also, I want to know is there any issues related to SDK when uploading an integrated app to Appstore using Xcode 11.
Thanks for the post. The iOS SDK does not have full Xcode 11 support, but you could still build SDK app using Xcode 11(If you are not using any Xcode 11 new features like Dark mode, UIScene, SwiftUI,etc. in your app).
For Xcode 11 integration, you may add the framework in General > Frameworks, Libraries, and Embedded Content; And in Build Phases > Copy Bundle Resources.
ERROR ITMS-90124: “The binary is invalid. The executable ‘Vidyalaya.app/Frameworks/MobileRTCScreenShare.framework/MobileRTCScreenShare’ has type ‘OBJECT’ that is not valid. Only ‘EXECUTE’ is permitted.”
ERROR ITMS-90125: “The binary is invalid. The encryption info in the LC_ENCRYPTION_INFO load command is either missing or invalid, or the binary is already encrypted. This binary does not seem to have been built with Apple’s linker.”
ERROR ITMS-90171: “Invalid Bundle Structure - The binary file ‘Vidyalaya.app/Frameworks/MobileRTCScreenShare.framework/MobileRTCScreenShare’ is not permitted. Your app can’t contain standalone executables or libraries, other than a valid CFBundleExecutable of supported bundles. Refer to the Bundle Programming Guide at https://developer.apple.com/go/?id=bundle-structure for information on the iOS app bundle structure.”
ERROR ITMS-90210: “Missing load commands. The executable at ‘Vidyalaya.app/Frameworks/MobileRTCScreenShare.framework’ does not have the necessary load commands. Try rebuilding the app with the latest Xcode version. If you are using third party development tools, contact the provider.”
ERROR ITMS-90362: “Invalid Info.plist value. The value for the key ‘MinimumOSVersion’ in bundle Vidyalaya.app/Frameworks/MobileRTCScreenShare.framework is invalid. The minimum value is 8.0”
ERROR ITMS-90635: “Invalid Mach-O Format. The Mach-O in bundle “Vidyalaya.app/Frameworks/MobileRTCScreenShare.framework” isn’t consistent with the Mach-O in the main bundle. The main bundle Mach-O contains arm64(machine code), while the nested bundle Mach-O contains armv7(machine code) and arm64(machine code). Verify that all of the targets for a platform have a consistent value for the ENABLE_BITCODE build setting.”
Thanks for the reply. You could modify the ZoomBundleVersionNumber in MobileRTCScreenShare.framework/Info.plist to be the SDK version number. We will fix this in the next release as well.
Thanks for using Zoom SDK. Are you using the device-only version(The one downloaded from the master branch of the github repo) or the all version(The version that supports both device+ simulator)? Please use the device only version since Apple does not like the SDKs that have simulator support.
I am facing the below issue while uploading apps to Testflight. I am using Device -Only version. Please check the error below. Could you please help me to fix this.
App Store Connect Operation Error
ERROR ITMS-90635: “Invalid Mach-O Format. The Mach-O in bundle “Prenatal & Postnatal Workout.app/PlugIns/Prenatal.appex/Frameworks/MobileRTCScreenShare.framework” isn’t consistent with the Mach-O in the main bundle. The main bundle Mach-O contains armv7(machine code) and arm64(machine code), while the nested bundle Mach-O contains armv7(machine code) and arm64(machine code). Verify that all of the targets for a platform have a consistent value for the ENABLE_BITCODE build setting.”
App Store Connect Operation Error
The binary is invalid. The executable ‘websia.app/Frameworks/MobileRTCScreenShare.framework/MobileRTCScreenShare’ has type ‘OBJECT’ that is not valid. Only ‘EXECUTE’ is permitted.
post_install do |installer|
installer.pods_project.targets.each do |target|
target.build_configurations.each do |config|
config.build_settings['ENABLE_BITCODE'] = 'NO'
end
end
end
fix, but not fix for:
App Store Connect Operation Error
Invalid Bundle Structure - The binary file ‘.app/Frameworks/MobileRTCScreenShare.framework/MobileRTCScreenShare’ is not permitted. Your app can’t contain standalone executables or libraries, other than a valid CFBundleExecutable of supported bundles. Refer to the Bundle Programming Guide at Redirect: Bundle Programming Guide - Bundle Structures for information on the iOS app bundle structure.
There are a few different reasons this issue can happen, so lets troubleshoot together
Every target in your project must have enable bitcode set to “NO”. For each target in your project: click “Build Settings” then search for “Bitcode” and set the value for Enable Bitcode to be “NO”.
MobileRTC.framework in your main target must be embedded and signed, not linked.
There is one problem. I have the case when the MobileRTC.framework and MobileRTCScreenShare.framework are in the same target. It worked great before. Was the problem due to SDK update? Is it possible to place the MobileRTC.framework and MobileRTCScreenShare.framework in the same target.