2015-05-21 6 views
5

मैंने सर्वर के लिए apns_certificate.pem और apns_privatekey.pem कॉन्फ़िगर किया है। मैं पुश अधिसूचना भेजने के लिए node.js सर्वर का उपयोग कर रहा हूँ। मैंने apns सर्वर पर सफलतापूर्वक अधिसूचना पोस्ट की है लेकिन डिवाइस को कोई पुश अधिसूचना नहीं मिली है।एपीएन संदेश सर्वर को भेजें, डिवाइस पर कोई सूचना नहीं आईओएस

मैं भी Troubleshooting Push Notifications से गुजर चुका हूं। मैंने सर्वर पक्ष पर कमांड का पालन करके सभी पेम फ़ाइलों की जांच की है क्योंकि यह समस्या निवारण दस्तावेज़ में वर्णित है।

$ openssl s_client -connect gateway.sandbox.push.apple.com:2195 -cert YourSSLCertAndPrivateKey.pem -debug -showcerts -CAfile server-ca-cert.pem 

यह सफल रहा।

मैंने जांच की कि मेरा सर्वर आदेशों का पालन करके apns सर्वर से कनेक्ट करने में सक्षम था।

$ telnet 1-courier.push.apple.com 5223 
$ telnet gateway.sandbox.push.apple.com 2195 
$ telnet gateway.push.apple.com 2195 

मैंने इसे आईओएस प्रोजेक्ट पर ठीक से कॉन्फ़िगर किया है और मुझे डिवाइस टोकन भी मिल रहा है।

लेकिन फिर भी मुझे अपने डिवाइस पर पुश अधिसूचना नहीं मिल रही थी।

+0

आवेदन जब आप सूचना भेजी चल रहा था? यदि हां: क्या आपने संबंधित विधियों को लागू किया था? – tilo

+0

एप्लिकेशन पृष्ठभूमि पर चल रहा था। मैंने "(शून्य) आवेदन लागू किया है: (यूआईएप्लिकेशंस *) एप्लिकेशन किया गया रिसीव रिमोट नोटिफिकेशन: (NSDictionary *) userInfo" विधि भी –

+0

अंत में, मैंने पाया कि यह सर्वर की समस्या थी। सर्वर Node.js. का उपयोग कर रहा था नोड मॉड्यूल से एपीएनएस को पुश अधिसूचना भेजने में कुछ समस्याएं हैं। मैं php सर्वर साइट कोड का उपयोग करता हूं जो RayWanderlich के पुश अधिसूचना ट्यूटोरियल पर पोस्ट किया गया है। यह चिकनी काम कर रहा है। –

उत्तर

-2

कृपया डिवाइस टोकन मान्य है या नहीं। किस डिवाइस टोकन के लिए, सर्वर पुश नोटिफिकेशन भेज रहा है। भी पुश अधिसूचना ऐप पृष्ठभूमि मोड पर जांच करनी चाहिए।

यदि सब से ऊपर सही है तो आपको पुश अधिसूचना प्राप्त होगी।

साथ ही ऐप प्रतिनिधि में इस दो तरीकों की जाँच करें और सर्वर के लिए अपने iOS एप्लिकेशन से डिवाइस टोकन भेजने:

- (void)application:(UIApplication *)app didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken { 
     NSString *str = [NSString stringWithFormat:@"Device Token=%@",deviceToken]; 
str = [str stringByReplacingOccurrencesOfString:@" " withString:@""]; 
     NSLog(@"This is device token%@", str); 
    } 

    - (void)application:(UIApplication *)app didFailToRegisterForRemoteNotificationsWithError:(NSError *)err { 
     NSString *str = [NSString stringWithFormat: @"Error: %@", err]; 
     NSLog(@"Error %@",err);  
    } 
+0

मैंने अपने प्रश्न में उल्लेख किया है कि मुझे डिवाइस टोकन मिला है और पंजीकरण सफल रहा है। –

+0

फिर डिवाइस पर संदेश भेजने के लिए डिवाइस टोकन के साथ सर्वर साइड कोड की जांच करें। –

+0

कृपया प्रश्न को ध्यान से पढ़ें। –

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