I followed instructions from https://ionicframework.com/docs/native/google-plus/.
I've created Android Client in https://console.cloud.google.com/apis/credentials/oauthclient using correct SHA-1 (re-checked using keytool -list -printcert -jarfile <path to your apk>
)
Code for login is simple as in instruction:
this.googlePlus.login({})
.then(res => console.log(res))
.catch(err => console.error(err));
However, it never comes into neither then
nor catch
.
No error is displayed in console.
Ionic version 3.20.0
Cordova version 7.1.0
Ionic Native GooglePlus 5.3.0
Android phone version 5.1.1
cordova-plugin-googleplus 5.3.0
I've spent two days, Ionic Native Facebook is working fine, while GooglePlus is just failing silently.
Please advice.
UPDATE 1
It seems to be an issue with cordova-plugin-googleplus
, as when I am changing GooglePlus.execute
to use
@Override
public boolean execute(String action, CordovaArgs args, CallbackContext callbackContext) throws JSONException {
this.savedCallbackContext = callbackContext;
savedCallbackContext.error(42);
action = "abracadabra";
... //remains unchanged
then I see in Chrome console 42 - this means, that error handling is not working properly in the cordova-plugin-googleplus plugin.
Finally, the root cause and solution was found. The issue happened because Google updated all com.google.android.gms:play-* modules and this affected all Google services cordova plugins.
If you are using only Google Plus plugin, then everything should be fine I think.
In other case, all dependencies in project.properties, plugin.xml files to com.google.android.gms:play-*
should be replaced with older version 11.8.0:
was
com.google.android.gms:play-services-auth:+
should be
com.google.android.gms:play-services-auth:11.8.0
I know, that this is better to be called a workaround, but no other solutions work.
Thanks guys from:
https://github.com/EddyVerbruggen/cordova-plugin-googleplus/issues/492
https://github.com/EddyVerbruggen/cordova-plugin-googleplus/issues/484
https://github.com/EddyVerbruggen/cordova-plugin-googleplus/issues/488
UPDATE 08.10.2018
After last updates, plugin is again not working. The issue happened because of conflict of versions of ``com.google.android.gms:play-services-:`.
For instance, com.google.android.gms:play-services-maps:15.0.1
, used by Google Maps plugin, and com.google.android.gms:play-services-auth:11.8.0
used by Google Plus plugin.
Solution is then straightforward:
config.xml
put <variable name="PLAY_SERVICES_VERSION" value="15.0.1" />
(instead of 15.0.1
there could be newer/older version) to every plugin, which uses play services - normally all plugins related to Google services.platforms/android/project.properties
use everywhere for play services version 15.0.1
(here should version the same as in point 1).