Closed beterfysiek closed 9 months ago
Hope i can help someone with it. Got it all to work. Make a iOS build. Go into the exported folder
App_name > dylibs > webrtc > lib > libweb... > info.plist
change CFBundleIdentifier to com.gdnative.webrtc-lib and MinimumOSVersion to 15.2
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleShortVersionString</key>
<string>1.0</string>
<key>CFBundleIdentifier</key>
<string>com.gdnative.webrtc-lib</string>
<key>CFBundleName</key>
<string>libwebrtc_native.ios.template_release.arm64</string>
<key>CFBundleExecutable</key>
<string>libwebrtc_native.ios.template_release.arm64</string>
<key>DTPlatformName</key>
<string>iphoneos</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleVersion</key>
<string>1</string>
<key>CFBundlePackageType</key>
<string>FMWK</string>
<key>MinimumOSVersion</key>
<string>15.2</string>
</dict>
</plist>
Have fun coding!
one question though, is it really needed that the library is build with a minimumOSVersion of 15.2? Seems high to me?
Godot version
4.1.0
Plugin version
webrtc-native-1.0.2-stable.zip
System information
Macbook Air M1
Issue description
Building for iOS Apple Distribution does not work, it throws two errors on a fresh Godot 4.1.0 project. I want it to work when i deploy my app to the store without any issues after adding the webrtc library.
Asset validation failed (90208) Invalid Bundle. The bundle my_app.app/Frameworks/libwebrtc_native.ios.template_release.arm64.framework does not support the minimum OS Version specified in the Info.plist.
Asset validation failed (90049) This bundle is invalid. The bundle at path Payload/my_app.app/Frameworks/libwebrtc_native.ios.template_release.arm64.framework has an invalid CFBundleIdentifier 'com.gdextension.framework.libwebrtc_native.ios.template_release.arm64' There are invalid characters(characters that are not dots, hyphen and alphanumerics) that have been replaced with their code point 'com.gdextension.framework.libwebrtc\u005fnative.ios.template\u005frelease.arm64' CFBundleIdentifier must be present, must contain only alphanumerics, dots, hyphens and must not end with a dot. [see the Core Foundation Keys at https://developer.apple.com/library/content/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html#//apple_ref/doc/uid/TP40009249-102070-TPXREF105] (ID: a1dc8e2d-631e-4a2a-8ffd-1c64d74c226f)
Steps to reproduce
Simply create a new project, import the webrtc library, build for iOS (Apple Distribution) and deploy to appstore trough XCode or otherwise.
The 'bundle is invalid. There are invalid characters' issue can be resolved by renaming com.gdnative.framework.libwebrtc_native.ios.release.arm64 to com.gdnative.webrtc-lib.
I could not figure out how to fix the minimum OS Version specified in the Info.plist yet. I tried to set the minimum OS Version to 10.0, 11.0, 12.0, 13.0 but none seem to work. I added the version to the plist and made a clean build before building each time.
Minimal reproduction project
No response