筆者の作業環境
mac OS 15.1
flutter 3.22.3
xcode 16.1
androidstudio 2024.2.1 Patch 2
1.XcodeでmininumDeploymentsを設定する
Targets/project/Generalの欄、Mininum Deploymentsを任意のversionに上げます。
xcode16からはminimumDeployments = iOS Deployment Targetになっていました。(xcode15の時は個別で選べた記憶があるのですが)
ちなみにmininumDeploymentsはアプリがインストール出来る最小のOSversionを指定する値です。
2 Podfileの修正
Firebase関連のライブラリを使用している場合、BoringSSL-GRPCの修正も必要になります。
以下のように修正してください。
podfile
post_install do |installer|
project_deployment_target = installer.pods_project.build_configurations.first.build_settings['IPHONEOS_DEPLOYMENT_TARGET']
installer.pods_project.targets.each do |target|
flutter_additional_ios_build_settings(target)
target.build_configurations.each do |config|
# デプロイメントターゲットを Xcode プロジェクトの設定と一致させる
old_target = config.build_settings['IPHONEOS_DEPLOYMENT_TARGET']
new_target = project_deployment_target
if old_target != new_target
puts "Updating deployment target for #{target.name}: #{old_target} -> #{new_target}"
config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = new_target
end
end
# 特定のターゲット 'BoringSSL-GRPC' の設定
if target.name == 'BoringSSL-GRPC'
target.source_build_phase.files.each do |file|
if file.settings && file.settings['COMPILER_FLAGS']
# '-GCC_WARN_INHIBIT_ALL_WARNINGS' フラグを除外
flags = file.settings['COMPILER_FLAGS'].split
flags.reject! { |flag| flag == '-GCC_WARN_INHIBIT_ALL_WARNINGS' }
file.settings['COMPILER_FLAGS'] = flags.join(' ')
end
end
end
end
end
このように修正することで、podfileのiOSDeploymentTargetとXcodeのDeploymentTargetが同期されるのでプロジェクトの整備性が高まるかと思います。
あとは、いつもの
flutter clean
flutter pub get
でビルドでOKです😀