1

AVPlayerを使ってmp3(カメラシャッター音)を再生しようとしています。押すと音が鳴るシンプルなボタンにすべてを取り除いた。すべてのオブジェクトは正しく作成されていますが、iPhoneまたはiPad(両方ともiOS 6を実行)でアプリを実行すると、音が発生しません。いいえ、ミュートボタンはオンになっておらず、音量が上がっています。:)両方のデバイスの他のアプリで音が聞こえます。

私は愚かなことをしていますか?

- (void)playCameraShutterSound
{
    NSURL *url = [[NSBundle mainBundle] URLForResource:@"Grab" withExtension:@"mp3" ];
    AVPlayer* player = [AVPlayer playerWithURL:url];
    [player play];
}
4

2 に答える 2

10

'player' はメソッドの最後で解放されます。クラス変数として予約する必要があります。

于 2012-10-14T22:31:09.157 に答える
0

これらの行を試して、「yoursound.mp3」をファイル名に置き換えてください。

NSURL *url = [NSURL fileURLWithPath:[NSString stringWithFormat:@"%@/yoursound.mp3", [[NSBundle mainBundle] resourcePath]]];
AVAsset *asset = [AVURLAsset URLAssetWithURL:url options:nil];
AVPlayerItem *anItem = [AVPlayerItem playerItemWithAsset:asset];
avplayer = [AVPlayer playerWithPlayerItem:anItem];
[avplayer play];
于 2012-10-14T22:26:11.953 に答える