0

私が望むのは、アプリがバックグラウンドに入ったとき (ホームボタンが押されたとき) に音の再生を停止することです。私は appDelegate.m でこれを行いましたが、それは言うuse of undeclared identifier 'soundID'

- (void)applicationDidEnterBackground:(UIApplication *)application
{
    AudioServicesDisposeSystemSoundID(soundID)
}

VC をデリゲートにインポートsoundIDし、プロパティとして公開しました。どこが間違っていますか?助けてください。

   NSString *path = [[NSBundle mainBundle] pathForResource:@"something" ofType:@"wav"];
    NSURL *url = [NSURL fileURLWithPath:path]; 
    AudioServicesCreateSystemSoundID((CFURLRef)url, &soundID);
    AudioServicesPlaySystemSound(soundID);
4

1 に答える 1

0

その機能が必要な場合は、アプリのメインplistファイル(おそらく名前が付けられ[your-app-name]-Info.plistている)に移動して、キーを見つける必要があります。

Required background modes

値を削除します

App plays audio

それでうまくいくはずです。

----------------編集:

これを試して:

NSString* path = [[NSBundle mainBundle] pathForResource:@"myWavFile" ofType:@"wav" inDirectory:@"DirectoryName"];
self.player = [AVPlayer playerWithURL:[NSURL fileURLWithPath:path]];
[self.player play];

セルフプレーヤーはどこにありますか:

@property (strong, nonatomic) AVPlayer *player;

また、次のことを行う必要があります。

#import <AVFoundation/AVFoundation.h>

そして、このフレームワークをプロジェクトに追加します。

于 2012-07-18T10:40:30.257 に答える