Sounds like you have to unsubscribe your VPViewController
from receiving the shake event notifications in its viewWillDisappear:
function.
Generally, if you want your viewController to receive certain event notifications only when visible you should subscribe to the notification in the viewWillAppear:
function and unsubscribe in the viewWillDisappear:
function.