cliente JavaScript de login do Google não está funcionando no PWA App
Desde ontem, quando uso o gapi.auth2 para fazer um Login do Google em um aplicativo PWA instalado no Android, o aplicativo abre a janela do navegador para selecionar o usuário, mas ele permanece em branco. A mesma página no navegador Chrome no Android abre a seleção do usuário, como de costume. O código é o mesmo, do mesmo servidor. O código não foi modificado em mais de 15 dias. Presumo que o problema seja alguma alteração no código do cliente gapi JS dos servidores do Google. A inspeção da guia de entrada do PWA no Google no chrome mostra o seguinte erro:
Uncaught Falha ao obter a origem pai a partir do hash da URL!
As origens no Google Developer Console estão bem.
Alguém tem alguma pista de como resolver iss
Edit1: parte do código
initGoogle() {
this.ngRedux.dispatch({ type: SN_INIT_GOOGLE });
Observable.create((observer: Observer<any>) => {
let head = document.getElementsByTagName('head');
(<any>window).__ongload = () => {
gapi.load('auth2', () => {
gapi.auth2.init({
client_id: `${AppConfig.google.clientID}`
}).then(() => {
this.auth2 = gapi.auth2.getAuthInstance();
this.googleInitiated();
observer.complete();
}, (err) => {
this.log.error(err);
observer.error(err);
});
});
};
let script: HTMLScriptElement = document.createElement('script');
script.src = 'https://apis.google.com/js/platform.js?onload=__ongload';
script.type = 'text/javascript';
head[ 0 ].appendChild(script);
}).pipe(
timeout(AppConfig.google.timeout),
retry(AppConfig.google.retries),
catchError(error => {
this.googleInitError();
return observableEmpty();
}),
take(1)
).subscribe();
}
async googleLogin(scope: string = 'profile email', rerequest: boolean = false, type: string = SN_GOOGLE_LOGIN): Promise<GoogleUser> {
let goopts = {
scope: this.ngRedux.getState().socialNetworks.getIn([ 'google', 'grantedScopes' ]),
prompt: rerequest ? 'consent' : undefined
};
try {
const user: GoogleUser = await this.auth2.signIn(<any>goopts);
...
return user;
} catch (error) {
...
return error;
}
}
Edit 2: Captura de tela do erro