私が書いているアプリでは、ユーザーがデバイスを X 秒間振る必要があります。
私はこれを介して試してみましmotionBeganたが、時々動作します。ただし、シェイクの途中で呼び出されmotionEndedたり、シェイクを完全に停止しない限り再度呼び出されないことがあります。また、デバイスが現在揺れているかどうかを検出する方法はないようです。motionCancelledmotionBegan
App Store には、これをうまく行っているアプリがたくさんあるので、何かが欠けていることは明らかです。