2016-08-02 5 views
6

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

उदाहरण के लिए टाइमर का उपयोग करके इसे आसानी से हासिल किया जा सकता है, लेकिन इनमें से कुछ अवधि काफी लंबी हैं (1 घंटा, 24 घंटे) कि यह काम नहीं करती है।

इस प्रकार मैं स्थानीय अधिसूचनाओं में सोच रहा हूं। मैं 24 घंटे के फायरेट के साथ एक शेड्यूल कर सकता हूं। बात यह है कि मुझे शर्तों को प्रमाणित करने के लिए चुप रहने की आवश्यकता है।

configuring a local notification सेक्शन here ऐसा लगता है कि केवल दूरस्थ अधिसूचनाएं चुप हो सकती हैं, लेकिन यह वास्तव में यह नहीं कहती कि यह नहीं किया जा सकता है।

इसके अलावा, मुझे पता चला है कि बैज नम्बर के अलावा स्थानीय अधिसूचना को ट्रिगर करना संभव है, और यह बैज बदल जाएगा। हालांकि मेरे ऐपडिलेगेट में कॉलबैक कभी नहीं कहा जाता है।

मैंने देखा है कि कुछ लोग कहते हैं कि यह नहीं किया जा सकता है, लेकिन इसे वास्तविक कठोर आधिकारिक साक्ष्य नहीं मिला है। कोई भी ऐसा करने में कामयाब रहा? या यह सुनिश्चित करने के लिए वास्तव में असंभव है? कोई सलाह बहुत मददगार होगी, बहुत पहले धन्यवाद!

+0

आपके पास "चुप" स्थानीय अधिसूचना नहीं हो सकती है। पृष्ठभूमि fetch मोड का उपयोग – Paulw11

+0

@ Paulw11 हाँ हो सकता है, लेकिन यह केवल दूरस्थ अधिसूचनाओं के लिए काम करता है, है ना? रिमोट अधिसूचना के बिना ऐप को जगाए जाने का कोई तरीका नहीं है? –

+2

पृष्ठभूमि fetch मोड अधिसूचनाओं के साथ कुछ भी नहीं है। यह एक पृष्ठभूमि मोड है जिसे आप चुन सकते हैं जहां आईओएस समय-समय पर आपके ऐप को जगाता है। आईओएस एप्लिकेशन प्रोग्रामिंग गाइड – Paulw11

उत्तर

3

मैंने कोशिश की और आपके जैसा ही अनुभव था - जब मेरा ऐप अग्रभूमि में नहीं है तो कॉलबैक कभी नहीं बुलाया जाता है। यह डिजाइन द्वारा है। एप्पल प्रलेखन कहा गया है कि कॉलबैक केवल कहा जाता है कि आपका ऐप्लिकेशन अग्रभूमि में चल रही userNotificationCenter:willPresentNotification:withCompletionHandler:https://developer.apple.com/reference/usernotifications/unusernotificationcenterdelegate/1649518-usernotificationcenter?language=objc

सूचनाएं प्राप्त करने के लिए जब अनुप्रयोग में अग्रभूमि didReceiveRemoteNotification है, लेकिन नहीं है के लिए केवल कॉलबैक विधि दुर्भाग्य से यह केवल पुश नोटिफिकेशन के लिए (खामोश है या अन्यथा)। https://developer.apple.com/reference/usernotifications/unusernotificationcenterdelegate/1649518-usernotificationcenter?language=objc

+0

तो आपका मतलब है कि जब आपका ऐप अग्रभूमि में होता है तो कॉलबैक कॉल किया जाता है? – Jonny

+1

यह ऐप पर काम करने के 2 साल बाद हुआ है, लेकिन उस समय, हाँ जब यह ऐप अग्रभूमि में था तब यह काम करता था। आईओएस के नए संस्करण इसे तोड़ सकते थे। – stackunderflows

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