0

Я пытаюсь в течение нескольких дней получить базовое приложение с запущенным уведомлением push.Получение push-уведомлений с помощью phonegap build

Я использую PhoneGap Build (настольное приложение) и тестирую на устройстве Android. Я пробовал различные учебники, но они никогда не работают. Выполнение следующего кода просто не дает никакой реакции.

Это мой текущий код:

config.xml Я добавил следующие строки:

<preference name="android-build-tool" value="gradle" /> 
<plugin name="phonegap-plugin-push" source="npm"> 
    <param name="SENDER_ID" value="540732047871" /> 
</plugin> 

index.html

<body> 
    <div class="app"> 
     <h1>PhoneGap</h1> 
    </div> 
    <script type="text/javascript" src="cordova.js"></script> 
    <script type="text/javascript" src="js/index.js"></script> 
    <script type="text/javascript"> 
     app.initialize(); 
    </script> 
</body> 

index.js

var app = { 
// Application Constructor 
initialize: function() { 
    this.bindEvents(); 
}, 
// Bind Event Listeners 
// 
// Bind any events that are required on startup. Common events are: 
// 'load', 'deviceready', 'offline', and 'online'. 
bindEvents: function() { 
    document.addEventListener('deviceready', this.onDeviceReady, false); 
}, 
// deviceready Event Handler 
// 
// The scope of 'this' is the event. In order to call the 'receivedEvent' 
// function, we must explicitly call 'app.receivedEvent(...);' 
onDeviceReady: function() { 
    var push = PushNotification.init({ 
     "android": { 
      "senderID": "540732047871" 
     }, 
     "ios": {"alert": "true", "badge": "true", "sound": "true"}, 
     "windows": {} 
    }); 

    push.on('registration', function(data) { 
     console.log("registration event"); 
     document.getElementById("regId").innerHTML = data.registrationId; 
     console.log(JSON.stringify(data)); 
    }); 

    push.on('notification', function(data) { 
     console.log("notification event"); 
     console.log(JSON.stringify(data)); 
     var cards = document.getElementById("cards"); 
     var card = '<div class="row">' + 
       '<div class="col s12 m6">' + 
       ' <div class="card darken-1">' + 
       ' <div class="card-content black-text">' + 
       '  <span class="card-title black-text">' + data.title + '</span>' + 
       '  <p>' + data.message + '</p>' + 
       ' </div>' + 
       ' </div>' + 
       ' </div>' + 
       '</div>'; 
     cards.innerHTML += card; 

     push.finish(function() { 
      console.log('finish successfully called'); 
     }); 
    }); 

    push.on('error', function(e) { 
     console.log("push error"); 
    }); 
}}; 

Я делаю что-то неправильно? Я использую код на основе "github" -страница "phonegap-plugin-push". Любые идеи, которые я, кажется, пропустил при создании проекта?

ответ

0

@Sven,

Консервированные Сообщение
Я блогов это завтра, так что я не должен повторять этот ответ снова и снова.

Вы не можете использовать Phonegap Desktop App с Phonegap Build.

PhoneGap Desktop App использует PhoneGap CLI, так что если вы хотите использовать PhoneGap Desktop App вы должны остаться с PhoneGap CLI.

Если вы хотите использовать PhoneGap построить, то забывают, что вы сделали и начать ИЛИ сделать Minor modifications двигаться PhoneGap Desktop App в PhoneGap построить. Чтобы быть ясным, разница незначительна, но достаточно, чтобы держать вас в отключении.

Кроме того, вы не сможете использовать PhoneGap Developer App как предназначен для работы с PhoneGap Desktop App. Вы не можете использовать CLI или Build с Developer App.

FWIW: Документация является проблемой. Я пытался заставить Phonegap исправить это. Вот report on the issue.

Дайте мне знать, что вы хотите.

Jesse

+0

О, ладно, не читал, что нигде. Спасибо за это. Тогда я попытаюсь получить его с помощью PhoneGap Build. Возможно, это исправляет проблему. Я буду комментировать то, что нашел. –

+0

@ Свен, это написано в документации, но не ** очень хорошо **. – JesseMonroy650