web-dev-qa-db-ja.com

エラー_BSMachError:(os / kern)CloudKitレコードの追加に関するリモート通知を受信した後の無効な機能(20)

レコードの追加に関するリモート通知を受信すると(didReceiveRemoteNotificationが呼び出されます)、次のエラーメッセージが表示されます。

_BSMachError:(os/kern)無効な機能(20)

私はすでにフォーラムやグーグルでこれについてもっと調べようとしましたが、自分の状況に当てはまる有用なアドバイスを見つけることができませんでした。

エラーメッセージの意味は何ですか?私はそれについて何ができますか?

23
vomako

このエラーが発生しました。私はUIAlertアクションブロックにいました。ブロックが終了したときにエラーが発生しました(ところで、親UIAlertViewControllerdispatch_async blockだから、メインスレッドから外れたと思います。

とにかく、アクションコード自体を

dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{

       [self handleActionForElement:thisType];



    });

そしてエラーはなくなりました。あなたのマイレージは異なる場合があります!

13
davidey

どうもありがとう、私はスウィフトでも同じ問題を抱えていました

だから私はメインスレッドにコードを入れることでそれを解決しました

func alertAction() {
  dispatch_async(dispatch_get_main_queue()) {
    //perform code
  }
}
0
Svitlana

Swift 5の場合、私は結局:

func alertAction() {
  DispatchQueue.main.async {
     //perform code
  }
}
0
cwgso

同じ問題があった。サードパーティのフレームワークの提示されたView Controllerの上にカスタムビューを提示しようとしていました。

プレゼンテーションロジックをView Controllerに移動して解決しました

0
Sunil