2011-02-01 18 views
23

क्या डिवाइस की मात्रा बदलने का कोई तरीका है? मैंने कई ऐप्स इसे देखा है।आईओएस: डिवाइस वॉल्यूम बदलें

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

क्या ऐप्पल के बिना आप ऐसा कर सकते हैं?

उत्तर

32

का उपयोग iPodMusicPlayer वास्तविक आइपॉड मात्रा के रूप में अच्छी तरह से स्थापित करने पर असर पड़ेगा। आपको लगता है कि से बचना चाहते हैं, इस का उपयोग करें:

#import <MediaPlayer/MediaPlayer.h> 
// ... 
MPMusicPlayerController *musicPlayer = [MPMusicPlayerController applicationMusicPlayer]; 
musicPlayer.volume = 1.0f; 

उपयोगकर्ता holex के रूप में सही ढंग से MPMusicPlayerController में संपत्ति volume उल्लेख deprecated in iOS 7 है।

+1

उपर्युक्त समाधान मेरे लिए अच्छा काम करता है। धन्यवाद। – shatthi

+5

अपने स्रोत फ़ाइल में 'MediaPlayer.framework' को जोड़ने के लिए याद रखें, और अपनी स्रोत फ़ाइल में '#import ' जोड़ें। –

+0

यह मेरी मदद करता है। बहुत धन्यवाद। – Shivaay

14

आप डिवाइस वॉल्यूम प्रोग्रामेटिक रूप से नहीं बदल सकते हैं, हालांकि MPVolumeView (वॉल्यूम स्लाइडर) डिवाइस वॉल्यूम बदलने के लिए है, लेकिन केवल उपयोगकर्ता इंटरैक्शन के माध्यम से है।

MPVolumeView पिटारे में एक नियंत्रण है, तो आप अपनी परियोजना तो MPVolumeView इंटरफ़ेस बिल्डर में पिटारे में प्रदर्शित किया जाएगा में MediaPlayer.framework जोड़ने की जरूरत है।

संपादित करें 1: MPVolumeView डिवाइस वॉल्यूम का उपयोग करता है जिसका उपयोग वॉल्यूम रिंग करने के लिए भी किया जाता है। AVAudioPlayer यदि आप एप्लिकेशन स्तर की मात्रा चाहते हैं तो वहां है। इस मामले में आप वॉल्यूम प्रॉपर्टी का उपयोग अपने एप्लिकेशन वॉल्यूम (डिवाइस वॉल्यूम नहीं) प्रोग्रामेटिक रूप से सेट करने के लिए कर सकते हैं। हालांकि, अगर आप UISlider नियंत्रण उपयोगकर्ता से मात्रा इनपुट प्राप्त करने के लिए उपयोग करें और अपनी AVAudioPlayer

+0

यह भी ध्यान दें कि यह केवल आईओएस 4.2 में उपलब्ध है, इसलिए आपको इसका उपयोग करने से पहले संस्करण/कक्षा उपलब्धता जांच शामिल करनी होगी। –

+0

नोप्स, इसे देखने/छुपाने के लिए इसमें एक नई संपत्ति शामिल है, नई संपत्ति केवल आईओएस 4.2 में उपलब्ध है, हालांकि मैंने इसे आईओएस 3.2 में उपयोग किया है, यहां मैंने इसका इस्तेमाल किया (आईओएस 3.2 या बाद में), http: // itunes.apple.com/us/app/msiradio/id399408266?mt=8 –

+0

हम्म, यह एक प्रकार का झटका है। क्या मैं रिंगर या सिस्टम वॉल्यूम की तुलना में एक अलग मात्रा में ध्वनि बजाने में सक्षम हूं? मैंने देखा है कि बहुत से ऐप्स पहले से ही ऐसा करते हैं। –

23

करने के लिए सेट कर सकते हैं आप एक छोटे चाल का उपयोग कर सकते हैं:

MPMusicPlayerController* musicPlayer = [MPMusicPlayerController iPodMusicPlayer]; 
    musicPlayer.volume = 1; // device volume will be changed to maximum value 
+0

वाह। वास्तव में काम किया। ठंडा! – JohnK

+0

आईओएस 8 + – Kevin

+0

के लिए iPodMusicPlayer के बजाय systemMusicPlayer का उपयोग करें 'वॉल्यूम' संपत्ति आईओएस 7.0 से शुरू हो गई है। आप इसे देख सकते हैं [यहां] (https://developer.apple.com/library/ios/documentation/MediaPlayer/Reference/MPMusicPlayerController_ClassReference/#//apple_ref/occ/instp/MPMusicPlayerController/volume)। – Alex

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