2017-06-21 12 views
6

का उपयोग करके ऐप बंद होने पर अधिसूचना प्राप्त होती है, मैं ionic2FCM के साथ उपयोग कर रहा हूं।आयनिक

ऐप चल रहा है जब मुझे अधिसूचना प्राप्त होती है।

ऐप चल रहा है या नहीं, मुझे अधिसूचना प्राप्त करने की आवश्यकता है।

मैं यह कैसे कर सकता हूं?

+0

कृपया विस्तृत करें, हमें बताएं कि आप अधिसूचना कैसे भेज रहे हैं? और जिस कोड को आप निष्पादित कर रहे हैं। – George

उत्तर

0

आप One-Signal जो अपनी जरूरत को हल करती है का उपयोग कर सकते हैं:: यहाँ कोड का सा कैसे टर्मिनल के माध्यम से

ionic cordova plugin add onesignal-cordova-plugin 
npm install --save @ionic-native/onesignal 

महत्वपूर्ण नोट आयनिक-2

में प्रारंभ करने में OneSignal Cordova प्लग-इन इंस्टॉल है सुनिश्चित करें कि आप प्रदाता को अपने app.module.ts में आयात करते हैं जैसा कि आयनिक मूल साइट पर निर्देशित किया गया है, उदाहरण के लिए

import {OneSignal} from '@ionic-native/onesignal'; 
@NgModule({ 
    ... 
    providers: [ 
    ... 
    OneSignal 
    ... 
    ] 

}) 
export class AppModule { } 

से लिया: आयोनिक देशी

अब OneSignal प्लगइन init। OneSignal

से

AppID: अपने में स्थानापन्न:

import {OneSignal} from '@ionic-native/onesignal'; 
import {Platform} from 'ionic-angular'; 

constructor(private _OneSignal: OneSignal, private _platform: Platform) { 
    startApp(); 
} 

    startApp() { 
    this._platform.ready().then(() => { 
     this._OneSignal.startInit(appId, googleProjectId); 
     this._OneSignal.inFocusDisplaying(this._OneSignal.OSInFocusDisplayOption.Notification); 
     this._OneSignal.setSubscription(true); 
     this._OneSignal.handleNotificationReceived().subscribe(() => { 
     // handle received here how you wish. 
     }); 
     this._OneSignal.handleNotificationOpened().subscribe(() => { 
     // handle opened here how you wish. 
     }); 
     this._OneSignal.endInit();   
    })  
    } 

नोट:

फिर, तो अपने app.ts कि यह स्टार्टअप पर चलता है, initializeApp() विधि के अंदर जैसे के लिए निम्न कोड जोड़ें

googleProjectId FCM

0

यदि आप एप्लिकेशन खोलने पर पहले ही अधिसूचना प्राप्त कर रहे हैं, तो मुझे लगता है कि आपके पास पहले से ही एक सर्वर है (जैसे फ़ायरबेस क्लाउड फ़ंक्शंस के साथ) और एक प्लगइन जिसे आपने अपने एप्लिकेशन में प्राप्त करने के लिए कॉन्फ़िगर किया है।

सबसे पहले, समस्या आईओएस पर है, सत्यापित करें कि जेनरेट की गई परियोजना (ionic cordova build के बाद) REMOTE PUSH NOTIFICATIONS XCode में सक्षम है। एंड्रॉइड में यह डिफ़ॉल्ट रूप से सक्षम है।

एक और चीज जो समस्या हो सकती है वह गुण है जो आप अपने पेलोड में भेज रहे हैं और प्लगइन जिसे आप प्राप्त करने के लिए उपयोग कर रहे हैं। प्लगइन phonegap-plugin-push नियम समान हैं के साथ

{ "notification": { "title": 'a title', "body": 'some text' }, "data": { "anydata1": 'data1', "anydata2": 'data2', "etc": 'etc' } }

: के लिए एक अधिसूचना प्लगइन cordova-plugin-firebase में दिखाने यह title या body, इस तरह के साथ एक notification संपत्ति करना होगा। आपके पास notification संपत्ति होनी चाहिए। यह सब प्लगइन पर निर्भर करता है।