2013-06-11 10 views
5
अलार्म में

में स्थानीय अधिसूचना, अधिसूचना पृष्ठभूमि में ठीक काम करता है इस प्रकार है:अग्रभूमि

UILocalNotification *notification1=[[UILocalNotification alloc]init]; 
    notification1.fireDate=alramtime; 
    [email protected]"Training Time"; 
    notification1.repeatInterval=NSDayCalendarUnit; 

    [email protected]"Alarm.caf"; 

    /////// 
    previousnotif=[[NSUserDefaults standardUserDefaults]objectForKey:@"notif1"]; 
    previous=[NSKeyedUnarchiver unarchiveObjectWithData:previousnotif]; 

    NSLog(@"alarm %@",previous); 
    if (previous!= NULL) { 
     [[UIApplication sharedApplication]cancelLocalNotification:previous]; 
     [[NSUserDefaults standardUserDefaults]removeObjectForKey:@"notif1"]; 

    } 
    NSData *alarm1=[NSKeyedArchiver archivedDataWithRootObject:notification1]; 
    [notifdefaults setObject:alarm1 forKey:@"notif1"]; 
    ///////// 


    [[UIApplication sharedApplication] scheduleLocalNotification:notification1]; 
    NSLog(@"new alarm %@",notification1); 

लेकिन जब मैं अग्रभूमि में भी खेलने के लिए इसे संशोधित इस प्रकार है: .. इसकी नहीं working..Only चेतावनी दिखाई देता है लेकिन कोई ध्वनि???

-(void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification 
{ 

UIApplicationState state = [application applicationState]; 
if (state == UIApplicationStateActive) { 


    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"KNIP" 
                message:notification.alertBody 
                delegate:self cancelButtonTitle:@"Close" 
              otherButtonTitles:nil]; 

[alert show]; 

} 
@end 

जब मैं लॉग इन करें soundfile notification..they काम के आदि गुण ठीक है ... लेकिन कोई आवाज नहीं है ...

उत्तर

8

अग्रभूमि आप चेतावनी दृश्य प्रदान करते हैं और ध्वनि खेलने अगर यह आवश्यकता के लिए है में, अधिसूचना सिर्फ एप्लिकेशनडिड रिसीव लॉकलोटेशन पर कॉल करेगी। आप AVAudioPlayer

//Playing sound 
     NSURL *url = [NSURL fileURLWithPath:[NSString stringWithFormat:@"%@/%@", [[NSBundle mainBundle] resourcePath],notification.soundName]]; 

     AVAudioPlayer *newAudioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:url error:NULL]; 
     self.audioPlayer = newAudioPlayer; 
     self.audioPlayer.numberOfLoops = -1; 
     [self.audioPlayer play]; 
     [newAudioPlayer release]; 
7

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

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