Я использую Ionic и Oauth.io для выполнения проверки подлинности. Если я запускаю ionic serve
и outh.js
файл outh.js
в свой индекс, все работает хорошо из браузера.
Но когда я запускаю ionic run ios
или устанавливаю приложение в android, я получаю следующую ошибку, когда я нажимаю кнопку auth (ту, которая предполагает выполнение OAuth.popup
Я не знаю, что делать, до сих пор я проверил следующее:
ionic plugin add https://github.com/oauth-io/oauth-phonegap.git
Ваши советы будут оценены.
Я понимаю, что читаю несколько сообщений. Инициализация OAuth и ссылки должны выполняться после того, как устройство будет готово, поэтому лучше всего включить инициализацию в этот блок:
$ionicPlatform.ready(function() {
// ...
if(typeof window.OAuth !== 'undefined'){
$rootScope.OAuth = window.OAuth;
$rootScope.OAuth.initialize('XXX');
}
else{
console.log("plugin not loaded, this is running in a browser");
$.getScript( "lib/oauth.js", function() {
$rootScope.OAuth = OAuth;
$rootScope.OAuth.initialize('XXX');
});
}
});
Теперь, если плагин загружен, он инициализирует объект window.OAuth, иначе приложение работает в браузере, поэтому я должен включить файл oauth.js. Также я назначил OAuth на $ rootScope для быстрого доступа.
Надеюсь, это поможет кому угодно.