iOS15 + Xcode13 + Firebase でクラッシュ
仕事ではまった現象。
iOS で起動後にクラッシュする現象が発生するようになった。 ちょうど firebase をアップデートしたのでこれが原因だろうと目星はついたものの、もとに戻すのは難しい。
ログを眺めていたら、exhausted real (wall clock) time allowance of 20.00 seconds といったログがあったのでこれを頼りに調査。
結果としては、この issue にたどり着いて原因が特定。
発生条件は、iOS15 + Xcode 13 + Firebase SDK のケース。
↑ で言及している通り Info.plist に FirebaseAppStoreReceiptURLCheckEnabled = 0 を設定して対応した。
Unity で設定するなら、こんな感じ。
var plist = new PlistDocument();
plist.ReadFromFile(plistPath);
PlistElementDict rootDict = plist.root;
rootDict.SetBoolean("FirebaseAppStoreReceiptURLCheckEnabled", false);
plist.WriteToFile(INFO_PLIST_PATH);
ちなみに、Xcode 12.x でビルドした場合はクラッシュしないので、Xcode を上げなくて済む場合はその対応でも良さそう。
Firebase SDK の方は、以前から発生していたが一向に対応されていない模様。
← Go home