使用phonegap-plugin-push

时间:2017-11-17 05:12:55

标签: cordova firebase visual-studio-2015 phonegap-pushplugin apache-cordova

我有一个基于apache cordova构建的Android应用程序。我想要这个应用程序的推送通知。我使用Visual Studio 2015 IDE构建了这个应用程序。 我已经为这个应用程序安装了一些插件,如cordova-plugin-device-orientation,statusbar等。为了启用这个应用程序的推送通知,我已经安装了phonegap-plugin-push(版本2.1.0)并为我的应用程序提供了发件人ID我使用Firebase创建的。通过创建新项目,添加了Android应用程序,下载了google-services.json文件并将其放入我的项目中。

<script>
        function setupPush() {
        //This line below throws error on simulator saying PushNotification //is not defined
            var push = PushNotification.init({
                "android": {
                    "senderID": "XXXXXXXXXX"
                },
                "ios": {
                    "sound": true,
                    "alert": true,
                    "badge": true
                },
                "windows": {}
            });
            alert('registered');
            push.on('registration', function (data) {
                alert('registration event' + data.registrationId);
                console.log("registration event: " + data.registrationId);
                var oldRegId = localStorage.getItem('registrationId');
                if (oldRegId !== data.registrationId) {
                    // Save new registration ID
                    alert('registration event' + data.registrationId)
                    localStorage.setItem('registrationId', data.registrationId);
                    // Post registrationId to your app server as the value has changed
                }
            });

            push.on('error', function (e) {
                console.log("push error = " + e.message);
            });
        }
       
        $(document).on('deviceready', function deviceIsReady() {
            console.log('Device is ready!');
            setupPush();
        });
    </script>

我找到了这段代码here

1 个答案:

答案 0 :(得分:0)

你的cordova CLI和cordova平台的android版本是什么? 我正在使用6.2.3安卓版,它运行正常。

请先尝试安装插件,所有插件安装成功后再安装android平台进行项目。