person t-kobayashi

CocoaPodsを更新しても、iOS版がビルドできない場合

calendar_today 2021年09月15日 update 2021年10月01日
Facebook Twitter LINE はてなブックマーク Pocket

google_mobile_adsをアップデートした後に、iOSシミュレータ向けにflutter runコマンド実行した際に、下記のようなエラーが発生したので、その解決策を備忘録として残します。

・・・
[!] CocoaPods could not find compatible versions for pod "Google-Mobile-Ads-SDK":
      In snapshot (Podfile.lock):
        Google-Mobile-Ads-SDK (= 7.69.0)

      In Podfile:
        google_mobile_ads (from `.symlinks/plugins/google_mobile_ads/ios`) was resolved to 0.0.1, which depends on
          Google-Mobile-Ads-SDK (= 8.5.0)


    You have either:
     * out-of-date source repos which you can update with `pod repo update` or with `pod install --repo-update`.
     * changed the constraints of dependency `Google-Mobile-Ads-SDK` inside your development pod `google_mobile_ads`.
       You should run `pod update Google-Mobile-Ads-SDK` to apply changes you've made.
・・・

提案にあるようにpod repo updatepod update Google-Mobile-Ads-SDKを実行しても、上記の問題は解決しませんでした。

普段なら、以下の3つのコマンドでPod関連の問題は解決するのですが、今回はそうは行きませんでした。

pod repo update
sudo gem install cocoapods
pot setup

下記のサイトにあるコマンドをiosフォルダ内で実行することで問題が解決しました。podやflutterのSDKを掃除してあげる必要があったようです。

https://www.gitmemory.com/issue/FirebaseExtended/flutterfire/5350/801064169

rm -rf Pods
rm -rf Podfile.lock
rm -rf ~/.pub-cache/hosted/pub.dartlang.org/
pod cache clean --all
flutter clean
flutter pub get
pod repo update
pod install

最近、Flutterのパッケージなどをアップデートするたびに、AndroidかiOSのどちらかのビルドが作成できなくなる現象に見舞われるので、油断できません。他の業務が忙しくて数週間アプリのコードに触れないと、アプリ開発の作業に戻るのが、億劫に感じることもあります。アプリ開発は間を開けないことが大事なような気がします。

追記(2021年10月1日):上記コマンド一覧のすべてを実行しなくても、解決されるケースがあったので、追記します。以下のコマンドでエラーが解消されました。

cd ios
rm Podfile.lock
pod repo update
pod install

Podsやpub.darlang.orgフォルダを削除したり、キャッシュをcleanしなくても大丈夫な場合があるので、まずはこちらから試してみるのがいいかと思います。

関連記事

Flutterの記事一覧を見る

Flutterの質問

soichiro1210 が1年前に投稿

質問日時 2023年07月31日

a-sato が3年前に投稿

質問日時 2021年07月01日

a-sato が3年前に投稿

質問日時 2021年06月30日

takumi が3年前に投稿

質問日時 2021年05月20日

a-sato が3年前に投稿

質問日時 2021年05月14日

Flutterの質問一覧を見る
search