ckazu.dev

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