Invalid parameter not satisfying: ~~~というエラーが出たときの対処方法

2019年8月29日

今回位置情報の取得ができるような修正を行なったときに以下のエラーがでました。

reason: 'Invalid parameter not satisfying: !stayUp || CLClientIsBackgroundable(internal->fClient)'

あまり見たことのないエラーだったのですが、今回はこのエラーの解決方法をご紹介します。

Invalid parameter not satisfying: ~~~というエラーが出たときの対処方法

このエラーは主に

TARGET > Capabilities

の設定に原因があるときに起きるエラーです。

私の場合、位置情報の取得を追加したときに「常に」位置情報を取得できるような実装を認め、バックグラウンドモードの許可をする必要があるためでした。

TARGET > Capabilities > Background Modes >ON

に変更し

TARGET > Capabilities > Background Modes > ON >Location updates にチェック

を入れたらエラーがなくなり無事ビルドできました。

今回の私のエラーはよく見るとCLClientIsBackgroundableと書いてありますが、Capabilitiesは色々な設定があるので、ここをチェックすれば自分に足りない設定がどれなのかがわかると思います。