Just My Life & My Work

最近在做遊戲,是個抓神魔獸的小遊戲,我們想要加入背景音樂,讓玩家能融入遊戲情境之中,以增加玩家黏著度。

用寶貝球捉神魔獸遊戲.PNG

那麼要如何播放背景音樂 (Play Background Music)呢?

將音樂.mp3檔匯入專案,再加上只要幾行的程式碼,就能播放音樂囉!

/**
 Theme: Play Background Music
 IDE: Xcode 8
 Language: Objective C
 Date: 106/08/30
 Author: HappyMan
 Blog: https://cg2010studio.com/
 */

// .h檔
#import 

{
    AVAudioPlayer *musicAudioPlayer;
}

@end

// .m檔
{
        NSString *soundFilePath = [[NSBundle mainBundle] pathForResource:@“Happy Battle" ofType:@"mp3"];
        NSURL *fileURL = [[NSURL alloc] initFileURLWithPath:soundFilePath];
        musicAudioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:fileURL error:nil];
        musicAudioPlayer.numberOfLoops = -1; //infinite loop
        [musicAudioPlayer play];
}

離開畫面會自動停止播放,或者是實作:

[musicAudioPlayer stop];


190216:我遇到在Mac上可以播放的mp3,然而放入專案中編譯播放卻沒有聲音⋯⋯debug十多分後,發現檔案內容顯示秒數為0,我拿其他mp3可以正常播放,後來把該檔轉檔後就恢復正常啦~真是個神奇的檔案XD!

想要App在背景時也能播放,可以加入這幾行:

    [[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:nil];

    [[AVAudioSession sharedInstance] setActive:YES error:nil];

    [[UIApplication sharedApplication] beginReceivingRemoteControlEvents];

參考:playing a mp3 file in iOS appPlay music in the background using AVAudioplayer

隨意留個言吧:)~

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com 標誌

您的留言將使用 WordPress.com 帳號。 登出 /  變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 /  變更 )

連結到 %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

標籤雲

%d 位部落客按了讚: