2011-10-15 22 views
15

ऐपस्टोर पर चल रहे मेरे ऐप्स एमपी 3 और वीडियो फ़ाइलों का उपयोग कर हैं जो आईओएस 5 अपडेट के बाद से काम नहीं करते हैं।AVFoundation आईओएस 5

मैं xcode 4.2 और ... स्थापित किया है जब मैं iPhone 5 सिम्युलेटर या डिवाइस मैं त्रुटि (ऑडियो या वीडियो फ़ाइलों के लिए) के बाद मिल में परीक्षण:

Error loading 
System/Library/Extensions/AudioIPCDriver.kext/Contents/Resources/AudioIPCPlugIn.bundle/Contents/MacOS/AudioIPCPlugIn: 
dlopen(/System/Library/Extensions/AudioIPCDriver.kext/Contents/Resources/AudioIPCPlugIn.bundle/Contents/MacOS/AudioIPCPlugIn, 262): 
Symbol not found: ___CFObjCIsCollectable 
Referenced from: /System/Library/Frameworks/Security.framework/Versions/A/Security 
Expected in: /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.0.sdk/System/Library/Frameworks/CoreFoundation.framework/CoreFoundation 
in /System/Library/Frameworks/Security.framework/Versions/A/Security 

जब मैं iPhone 4.3 सिम्युलेटर या डिवाइस में इस कोशिश यह क्रैश नहीं होता ..

मैंने शामिल ढांचे को साफ और फिर से आयात किया है, लेकिन ऐसा लगता है कि

नोट: मेरे ऐप्स किसी भी सुरक्षा का उपयोग नहीं करते हैं।

क्या आप मदद कर सकते हैं? NSURLNSString के बजाय:

उत्तर

1

मैं समाधान पाया

NSURL *chemin = [NSURL fileURLWithPath:[NSString stringWithFormat:@"%@/MySound.wav", [[NSBundle mainBundle] resourcePath]]]; 
NSError *error; 
AVAudioPlayer* mySound = [[AVAudioPlayer alloc] initWithContentsOfURL:chemin error:&error]; 
mySound.delegate = self; 
[chemin release]; 
[mySound Play]; 
+0

फिर भी एक ही मुद्दे के साथ छोड़ दिया मेरे लिए ... –

0

मैं एक ही त्रुटि थी, लेकिन मेरे कोड आपसे अलग नहीं था। मैं वास्तव में को सुरक्षा ढांचे में कुछ भी नहीं चाहिए, लेकिन मेरे प्रोजेक्ट में उस ढांचे को जोड़कर इस मुद्दे को ठीक किया गया है।

+0

नहीं, अभी भी कुछ भी नहीं। –

9

मुझे अभी एक जवाब मिला है here

यदि आपका ऐप यहां क्रैश हो जाता है, तो एक्सकोड 4 ब्रेकपॉइंट्स टैब में सभी अपवाद अक्षम करें। शायद यह एसडीके बग है।

+0

इसने मेरे लिए इस मुद्दे को हल किया, धन्यवाद। – aslisabanci

+0

बहुत बहुत धन्यवाद। मेरे लिए भी काम किया। क्या किसी को पता है कि यह मामला क्यों है? – Dash

4

अपने खिलाड़ी को एक बनाए रखने की संपत्ति बनाने की कोशिश करें। मैंने वही अनुभव किया और क्योंकि मैंने अपने खिलाड़ी को स्थानीय रूप से घोषित किया था, मुझे लगता है कि एआरसी ने जिस तरीके से खिलाड़ी को घोषित किया था, उतनी ही जल्दी से बनाए रखा था।

मेक खिलाड़ी एक बनाए रखा संपत्ति

@property (strong)AVAudioPlayer *player; 

प्रतिनिधि (self.player.delegate = आत्म) की स्थापना की और साफ करने के लिए प्रतिनिधि के तरीकों का उपयोग करने के लिए याद रखें:

-(void)audioPlayerDidFinishPlaying:(AVAudioPlayer *)player successfully:(BOOL)playedSuccessfully { 
    self.player = nil; 
} 
+0

हाँ! धन्यवाद! वो मेरे लिए किया गया। –