【Swift】PasoriのreadWithoutEncryptionByメソッドがreleaseビルドで動作しなかった話。


発生事象

以下のメソッドでICカードの諸々の情報を取得することができます。

(NSString *)readWithoutEncryptionBy:(felica_card_t)card

今回発生したのは、、

Debugビルドだと、値を取得することが出来るのに、、

releaseビルドだと、NULLが返却されて、読取り直後に落ちてしまうという事象です。

解決策

こうしたら直った。
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓

解説

GCC_OPTIMIZATION_LEVEL
という、コンパイル時の最適化レベルを最低レベルに設定することで、上記の事象は解決しました。
※ちなみに、その次のFastというレベルでもNGでした。

参考文献

iOSプロジェクトのBuildを高速化する
Apple 公式ドキュメント