Hi, when uploading an app that uses ArcGIS Runtime 100.15.x to the App Store through Xcode, you now get the following error:
Invalid Executable. The executable 'appname.app/Frameworks/ArcGIS.framework/ArcGIS' contains bitcode.
Invalid Executable. The executable 'appname.app/Frameworks/Runtimecore.framework/Runtimecore' contains bitcode.
Does Esri plan to rebuild the ArcGIS Runtime SDK 100.15.x without bitcode (since Apple deprecated it), and release a new version without bitcode?
For anyone else having this issue you can follow https://stackoverflow.com/a/78999842 with something like this in your Podfile:
post_install do |installer|
# https://stackoverflow.com/questions/78993520/invalid-executable-the-executable-appname-app-frameworks-hermes-framework-herm/79000365#79000365
bitcode_strip_path = `xcrun --find bitcode_strip`.chop!
def strip_bitcode_from_framework(bitcode_strip_path, framework_relative_path)
framework_path = File.join(Dir.pwd, framework_relative_path)
command = "#{bitcode_strip_path} #{framework_path} -r -o #{framework_path}"
puts "Stripping bitcode: #{command}"
system(command)
end
framework_paths = [
"Pods/ArcGIS-Runtime-SDK-iOS/ArcGIS.xcframework/ios-arm64/ArcGIS.framework/ArcGIS",
"Pods/ArcGIS-Runtime-SDK-iOS/Runtimecore.xcframework/ios-arm64/Runtimecore.framework/Runtimecore"
]
framework_paths.each do |framework_relative_path|
strip_bitcode_from_framework(bitcode_strip_path, framework_relative_path)
end
end
Thanks for asking this question. From what I heard, we aren't likely to rebuild a new patch version to support the new environment (Xcode 16 & iOS 18) as the product is in extended support period.
With some scripting, the bitcode can be removed on your side, am I understanding it correctly?