मैं अपने ऐप में callkit और Pushkit का उपयोग कर रहा हूं। कॉलकिट का उपयोग करने के बाद जब मेरा ऐप पृष्ठभूमि में जा रहा है तो स्क्रीन के शीर्ष पर एक लाल दृश्य दिखाई देता है, यहां तक ​​​​कि मैंने कॉल को डिस्कनेक्ट कर दिया है।

इस शीर्ष दृश्य को प्रोग्रामेटिक रूप से कैसे निकालें।

यहाँ मुद्दे का स्क्रीनशॉट है। यहां छवि विवरण दर्ज करें

मैं फोन कॉल काट रहा हूं। इस लिंक का उपयोग करते हुए

कॉलकिट कॉल डिस्कनेक्ट

2
Varinder Singh iPhone Dev 26 जुलाई 2017, 11:01
1
यह एक आईओएस सीमा है। मुझे लगता है कि यह एक गोपनीयता की बात है। ऐप्पल चाहता है कि उपयोगकर्ताओं को पता चले कि वे कहीं भी फोन कॉल में हैं। उन ऐप्स के लिए भी जो बैकग्राउंड में लोकेशन की निगरानी कर रहे हैं, या ऑडियो रिकॉर्ड कर रहे हैं।
 – 
TawaNicolas
26 जुलाई 2017, 11:03
1
यह कोई मुद्दा नहीं है। आईओएस का यह डिफ़ॉल्ट व्यवहार।
 – 
Arasuvel
26 जुलाई 2017, 11:04
@ तवानिकोलस .. जब मैं किसी फोन कॉल में नहीं हूं .. यह शीर्ष दृश्य ऐप को छोटा करते समय हर समय दिखा रहा है।
 – 
Varinder Singh iPhone Dev
26 जुलाई 2017, 11:07

4 जवाब

यदि आप CallKit फ्रेमवर्क का उपयोग कर रहे हैं, तो वह बार हरा होना चाहिए। लाल रंग अक्सर CallKit ढांचे के कार्यान्वयन के बिना एक एसआईपी कॉल को इंगित करने के लिए प्रयोग किया जाता है। लेकिन अगर आप कहते हैं कि कॉल समाप्त हो गई है और बार अभी भी है, तो इसका मतलब है कि आपने CallKit का उपयोग करके कॉल को ठीक से समाप्त नहीं किया है। इसका मतलब है कि यह अभी भी एक सक्रिय एसआईपी कॉल को इंगित करता है।

जब आप reportNewIncomingCallWithUUID और [[CXStartCallAction alloc] initWithCallUUID के साथ आउटगोइंग कॉल की रिपोर्ट करते हैं, तो आप UUID कॉल प्राप्त कर सकते हैं। उस तरीके से आप अपना UUID बनाते और पास करते हैं।

NSUUID *callUUID = [NSUUID UUID];

आपको इसका ट्रैक रखना होगा!

5
26 जुलाई 2017, 16:59

यह कोई मुद्दा नहीं है। यह आईओएस का डिफ़ॉल्ट व्यवहार है।

जब आप फोन कॉल में हों, बैकग्राउंड में लोकेशन की निगरानी कर रहे हों, ऑडियो रिकॉर्ड कर रहे हों, वीडियो कॉल कर रहे हों (जैसे: स्काइप)।

3
Arasuvel 26 जुलाई 2017, 11:06
जब मैं फोन कॉल डिस्कनेक्ट करता हूं .. कॉल डिस्कनेक्ट करने के बाद रेड टॉप बार नहीं जाता है।
 – 
Varinder Singh iPhone Dev
26 जुलाई 2017, 12:35

आपका ऑडियो सत्र अभी भी एक रिकोडिंग सत्र है (जैसे ऑडियो सत्र चलाएं और रिकॉर्ड करें) यही कारण है कि लाल बार अभी भी शीर्ष पर है। यह उपयोगकर्ता को इंगित करता है कि आपका ऐप ऑडियो रिकॉर्ड कर रहा है जैसा कि पिछली टिप्पणियों (सामान्य आईओएस व्यवहार) में उल्लेख किया गया था। यदि आप कॉल समाप्त होने के बाद लाल पट्टी को हटाना चाहते हैं, तो आप ऑडियो सत्र को गैर-रिकोडिंग सत्र में बदल दें, जैसे परिवेश ऑडियो सत्र।

0
momo 21 जिंदा 2020, 18:23

लाल बैनर का अर्थ है AVAudioSession अभी भी सक्रिय है। अपने ऑडियो इंजन को निष्क्रिय करने के लिए CallKit की प्रदाता पद्धति का उपयोग करें

func provider(_ provider: CXProvider, didDeactivate audioSession: AVAudioSession)
0
Miki 24 जिंदा 2020, 11:01