Communications.registerForOAuthMessages doesn't call method on real device (Venu 2 Plus)

When I'm running the code below on the simulator everything works fine, just as expected and 'onOAuthMessage' method is called.
But I have an unknown issue while trying to test OAuthRequest on real device (Venu 2 Plus) – 'onOAuthMessage' method is never called.
Where could be the issue?
——————————————————————
Communications.registerForOAuthMessages(method(:onOAuthMessage));
Communications.makeOAuthRequest(
"https://<some_url>/activate",
{
"user_code" => <user_code>
},
"https://<some_url>device/success",
Communications.OAUTH_RESULT_TYPE_URL,
{"responseCode" => "myOAuthCode", "responseError" => "myOAuthError"}
);
function onOAuthMessage(message as Communications.OAuthMessage) as Void {
  if (message.data != null) {
     $.errorMessage = "Successfully confirmed device";
     System.println("Successfully confirmed device!");
  } else {
     $.errorMessage = "8. Error during device confirmation!";
     Storage.deleteValue("deviceCode");
     System.println("Error during device confirmation!");
  }
}
——————————————————————