Min iOS version
Thermion requires a minimum iOS version of 13.0. When building a Flutter application, ensure your application's ios/Podfile
contains the following:
platform :ios, '13.0'
and in ios/Info.plist:
<key>LSMinimumSystemVersion</key>
<string>13.0</string>
When submitting to the App Store, you may encounter an error saying thermion_dart.framework does not supported the minimum deployment target in Info.plist
.
This is because Flutter hardcodes a deployment target of iOS 12.0 when invoking the native assets build, which conflicts with actual requirement.
After running flutter build ios
(but before archiving the build and submitting to the App Store), run the following script to replace the MinimumOSVersion
:
#!/bin/zsh
# Array of directories containing Info.plist files
directories=(
"./build/ios/iphoneos/Runner.app/Frameworks/thermion_dart.framework"
"./build/ios/Release-iphoneos/Runner.app/Frameworks/thermion_dart.framework"
"./build/native_assets/ios/thermion_dart.framework"
)
# Loop through each directory
for dir in "${directories[@]}"; do
plist_path="$dir/Info.plist"
# Check if Info.plist exists in the directory
if [[ -f "$plist_path" ]]; then
echo "Processing: $plist_path"
# Use PlistBuddy to change the MinimumOSVersion
/usr/libexec/PlistBuddy -c "Set :MinimumOSVersion 13.0" "$plist_path" 2>/dev/null
if [[ $? -eq 0 ]]; then
echo "✓ Successfully updated version to 13.0"
else
echo "✗ Failed to update version in $plist_path"
fi
else
echo "✗ Info.plist not found in $dir"
fi
done