Как использовать oauth login в кордове - PullRequest
0 голосов
/ 27 июня 2019

Я хочу добавить Google Login для Android с помощью Cordova. Я использовал несколько кодов, доступных в интернете, но ни один из них не работает.

1 Ответ

0 голосов
/ 15 июля 2019

Добавьте cordova-plugin-googleplus плагин в вашем проекте cordova.

cordova plugin add cordova-plugin-googleplus --variable REVERSED_CLIENT_ID=myreversedclientid

config.xml:

<?xml version='1.0' encoding='utf-8'?>
<widget id="xxx" version="1.0" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
...
<gap:plugin name="cordova-plugin-googleplus" source="npm">
        <param name="REVERSED_CLIENT_ID" value="com.googleusercontent.apps.******" />
    </gap:plugin>
...
<access origin="*.google.*" />
...
    <plugin name="cordova-plugin-googleplus" spec="~4.0.9">
        <variable name="REVERSED_CLIENT_ID" value="com.googleusercontent.apps.******" />
    </plugin>
</widget>

Login.html

<!DOCTYPE HTML>
<html>
<head>
    ...
    <script>
        function google_login() {
            window.plugins.googleplus.login(
                {},
                function (obj) {
                    var json_userDetails = '{"email":"' + obj.email + '" , "userID":"' + obj.userId + '" , "name":"' + obj.displayName + '" , "clientID":"com.googleusercontent.apps.*********" , "accessToken":"' + obj.accessToken + '" , "refreshToken":"' + obj.refreshToken + '"}';
                    alert(json_userDetails);
                    // logout after get values.
                    window.plugins.googleplus.logout(function (msg) {});
                    // logout after get error msg.
                    window.plugins.googleplus.logout(function (msg) {});
                },
                function (msg) { alert("error: " + msg); }
            );
        }
    </script>
    ...
</head>

<body>
    ...
    ...
    <div class="ui-block-a"><img src="img/signin.png" onclick="return google_login();" style="width: 95%;"></div>
</body>
</html>
...