2016-02-14 7 views
8

प्रतिक्रिया मूल के साथ मांग पर अधिसूचनाओं के लिए डिवाइस टोकन प्राप्त करने का कोई तरीका है? ऐसा लगता है कि दस्तावेज़ों से, टोकन का खुलासा केवल एक ही समय में पुशनोटिफिकेशन रजिस्टर ईवेंट पर है।प्रतिक्रिया मूल के साथ डिवाइस टोकन प्राप्त करें

अधिक आम तौर पर, डिवाइस टोकन को संभालने के लिए सामान्य अभ्यास क्या है?

यदि कोई उपयोगकर्ता मेरे ऐप में लॉग इन करता है, तो ऐप पुशनोटिफिकेशन से अनुमतियों का अनुरोध करता है, रजिस्टर ईवेंट निकाल दिया जाता है और मैं उस डिवाइस को लॉग इन उपयोगकर्ता से जोड़ सकता हूं। अब तक बहुत अच्छा है, लेकिन यदि वह उपयोगकर्ता लॉग आउट करता है, और मैंने अधिसूचनाओं को रोकने के लिए उस संगठन को तोड़ दिया है, तो मैं क्या करता हूं जब कोई अन्य उपयोगकर्ता लॉग इन करता है? ऐप में पहले से ही अनुमतियां हैं, इसलिए रजिस्टर फिर से आग नहीं होगा। मैं इसे नए उपयोगकर्ता के साथ जोड़ने के लिए डिवाइस टोकन कैसे प्राप्त करूं?

या क्या मैं इस गलत तरीके से सोच रहा हूं?

उत्तर

14

ऐसा लगता है कि register ईवेंट केवल तभी आग लगता है जब उपयोगकर्ता पहुंच प्रदान करता है समस्या थी। register घटना requestPermissions पर कॉल के जवाब में आग लग जाएगी चाहे उपयोगकर्ता को संकेत दिया गया हो या नहीं। तो ऐप लोड होने पर अनुमतियों का अनुरोध करके और register ईवेंट का जवाब देकर, आप हमेशा डिवाइस आईडी प्राप्त कर सकते हैं। इस तरह:

PushNotificationIOS.addEventListener('register', (token) => { 

    ... store or use the token here ... 

}); 

PushNotificationIOS.requestPermissions(); 
+14

यदि यह किसी और की मदद करता है ... 'रजिस्टर' ईवेंट आईओएस सिम्युलेटर में कभी भी आग नहीं लगाता है। इसका परीक्षण करने के लिए आपको एक वास्तविक डिवाइस का उपयोग करने की आवश्यकता होगी। – Wireblue

+1

क्या पंजीकरण कार्यक्रम के बाद डिवाइस टोकन तक पहुंचने का कोई तरीका है? – chandlervdw

+0

मुझे ऐसा नहीं लगता है। लेकिन ऐसा लगता है कि जब भी आपका ऐप लॉन्च होता है तो पंजीकरण घटना आग लगती है, ताकि आप इसे हमेशा पकड़ सकें और इसे अन्य घटकों के उपयोग के लिए कहीं भी स्टोर कर सकें। – nicholas

संबंधित मुद्दे