मेरे पास AVQueuePlayer
आधारित ऑडियो स्ट्रीमिंग प्लेयर है जिसे पृष्ठभूमि में चलाने की आवश्यकता है। खिलाड़ी को तब तक चलने की जरूरत है जब तक कि वह सभी सूची खेलना समाप्त न करे। बेशक इसे रोकना होगा यदि नेटवर्क कनेक्शन खराब हो जाता है, लेकिन नेटवर्क कनेक्शन वापस आने पर इसे स्वचालित रूप से फिर से शुरू करना चाहिए।जब नेटवर्क सक्रिय हो जाता है (और खेलने के लिए तैयार है) AVQueuePlayer/AVPlayerItem से कॉलबैक कैसे प्राप्त करें?
इस के लिए, मैं
AVPlayerItem.status
AVPlayerItem.playbackLikelyToKeepUp
AVPlayer.currentItem
AVPlayer.status
AVPlayer.error
निगरानी कर रहा हूँ केवी का उपयोग कर ओ उदाहरण के लिए, यदि नेटवर्क कनेक्शन अस्थायी त्रुटि से ठीक हो जाता है, तो मुझे उम्मीद है कि currentAVPlayerItem.status
AVPlayerStatusItemReadyToPlay
बन जाएगा, जो मेरे प्लेयर को सूचित किया जाएगा और मैं उस बिंदु पर [AVQueuePlayer play]
जारी कर सकता हूं।
यह तंत्र (तर्क) कुछ मामलों में काम करता प्रतीत होता है, लेकिन ऑफ़लाइन वातावरण में अक्सर, AVPlayerItem.status
AVPlayerItemStatusFailed
बन जाता है, जो आइटम AVQueuePlayer
स्वचालित रूप से छोड़ने लगता है। नतीजतन, कतार खाली हो जाएगी और AVPlayerItem
से कोई कॉलबैक प्राप्त नहीं किया जा सकता है।
मुझे उम्मीद थी कि AVPlayer
में कुछ संपत्ति बदलेगी जब नेटवर्क कनेक्शन खराब हो जाएगा/ठीक हो जाएगा, लेकिन कुछ भी नहीं बदलता है (status
, error
आदि)।
स्पष्ट रूप से मैं Reachability
पर निगरानी रख सकता हूं, लेकिन यह तब काम नहीं करता जब ऐप पृष्ठभूमि में चल रहा हो।
मुझे कैसे पता चलेगा कि नेटवर्क कब बैक अप आता है और AVQueuePlayer
इस स्थिति में फिर से बजाने योग्य है?
मैं इस क्षेत्र के आसपास एक नौसिखिया हो सकता हूं। अगर कोई मुझे एक सामान्य विचार दे सकता है कि वह अस्थायी नेटवर्क कनेक्शन मुद्दों से पूरी तरह से बंद किए बिना अनुभव AVQueuePlayer
अनुभव कैसे प्राप्त करता है, तो यह भी एक शानदार मदद होगी!
एक ही समस्या होने के बाद। क्या आपको इसका कोई समाधान मिला? – adamsfamily