備忘録。
iOSのホームウィジェットがあるアプリケーションにflutter_flavorizrを適用すると多くのエラーが発生する。
Flutter.h not found
https://github.com/AngeloAvv/flutter_flavorizr/issues/197
このIssueの通りで解決する。
具体的にはExtension(ウィジェット側)のBuildSettingsでRunner側のRunner/Runner-Bridging-Header.h
を読もうとしているのが原因。
ウィジェットからしたら「Flutterねぇよ。」ということらしい。
その他
flavorizrでExtensionを含むXcodeの多くの設定が書き換わっていることが問題なので、Extensionはバックアップしてもう一度作り直すと解決したりする。
Signing & Capabilitiesの設定も要確認。
Bundle Identifierの設定を間違えないようにする。
例えば、
com.example.app
、com.example.app.dev
、com.example.app.stg
がある場合、
ウィジェットのIdentifierは
com.example.app.WidgetName
、com.example.app.dev.WidgetName
、com.example.app.stg.WidgetName
とする。
間違ってもcom.example.app.WidgetName.dev
としないこと。
AppGroupは全てのConfigureでそれぞれ適用させる。
うっかり何か抜けていたりするとウィジェットが更新できなくて混乱するので注意。
今回の範囲ではplistやDerivedDataをいじる必要はほとんどなかった。