AVAudio层没有在ios中播放声音

时间:2016-02-19 08:02:32

标签: ios objective-c push-notification avaudioplayer

您好我的应用程序中我使用UILocalNotificationsAVAudiopPlayer来播放一首歌。当收到通知时,我会在选择通知提醒时尝试播放歌曲。这是代码,我收到声音,但isplaying属性设置为YES。

AppDelegate

-(void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification
{ 
    MainViewController *main=[[MainViewController alloc]init];
    [main playSong:notification.soundName];    
}

-(void)playSong:(NSString *)songName
{
    AVAudioSession *session = [AVAudioSession sharedInstance];
    [session setCategory:AVAudioSessionCategoryPlayback error:nil];

    NSString *soundFilePath = [[NSBundle mainBundle] pathForResource:songName ofType:@"mp3"];
    NSURL *soundFileURL = [NSURL fileURLWithPath:soundFilePath];
    [_audioPlayer setDelegate:self];
    _audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:soundFileURL error:nil];
    _audioPlayer.numberOfLoops = -1; //Infinite
    [_audioPlayer prepareToPlay];
    [_audioPlayer play];
}

1 个答案:

答案 0 :(得分:0)

使用以下代码替换您的代码,然后尝试它可能对您有帮助。

TABLES: VBRK.

DATA: BEGIN OF it_test,
      BUKRS LIKE VBRK-BUKRS,
      FKDAT LIKE VBRK-FKDAT,
END OF it_test.

DATA: wa_test LIKE it_test.


SELECT * FROM VBRK INTO CORRESPONDING FIELD OF wa_test.

IF wa_test-BUKRS = 'xxxx'.
   wa_test-BUKRS = 'XXXXX' "Problem occurs here as the BUKRS allow 4 value
   APPEND wa_test TO it_test.
ENDIF.