मैं अपने ऐप में हर बटन क्लिक पर एक क्लिक ध्वनि चलाने के लिए उसके लिए कोशिश कर रहा हूँ मैं एक उपयोगिता वर्ग जिसका ज और मीटर हैस्मृति रिसाव जब बनाए रखने संपत्ति
ज फ़ाइल इस प्रकार बनाया
@interface SoundPlayUtil : NSObject<AVAudioPlayerDelegate,AVAudioSessionDelegate>
{
AVAudioPlayer *audioplayer;
}
@property (retain, nonatomic) AVAudioPlayer *audioplayer;
-(id)initWithDefaultClickSoundName;
-(void)playIfSoundisEnabled;
@end
मीटर फ़ाइल
@implementation SoundPlayUtil
@synthesize audioplayer;
-(id)initWithDefaultClickSoundName
{
self = [super init];
if (self)
{
NSString* BS_path_blue=[[NSBundle mainBundle]pathForResource:@"click" ofType:@"mp3"];
self.audioplayer =[[AVAudioPlayer alloc]initWithContentsOfURL:[NSURL fileURLWithPath:BS_path_blue] error:NULL];
[self.audioplayer prepareToPlay];
}
return self;
}
-(void)playIfSoundisEnabled
{
if ([[NSUserDefaults standardUserDefaults] boolForKey:soundStatus]==YES)
{
[self.audioplayer play];
}
}
-(void)dealloc
{
[audioplayer release];
[super dealloc];
}
@end
और किसी भी वर्ग पर बटन पर क्लिक मैं
कर रहा हूँयह काम कर रहा है और मैं ध्वनि बजाने में सफल रहा। जब मैं कोड का विश्लेषण करता हूं तो समस्या उत्पन्न होती है। कंपाइलर दिखाता है कि में मेडिट रिसाव है initWithDefaultClickSoundName उपयोगिता वर्ग के एमएम में विधि क्योंकि मैं self.audioplayer पर आवंटन विधि भेज रहा हूं और इसे जारी नहीं कर रहा हूं।
इस ऑब्जेक्ट को जारी करने का सबसे अच्छा स्थान क्या है?
आप एआरसी का उपयोग कर रहे हैं? –
नहीं, त्वरित उत्तर के लिए एआरसी –