1

別のアプリからのバックグラウンド オーディオを停止するにはどうすればよいですか?

私が試してみました

NSError *error;  
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:nil];  
[[AVAudioSession sharedInstance] setActive:YES error:&error];

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)options- (void)applicationWillEnterForeground:(UIApplication *) applicationしかし効果はありません。

私のアプリは The Amazing Audio Engine を使用してオーディオを再生しますが、バックグラウンド オーディオ自体は必要ないため、info.plist の「必要なデバイス機能」に「オーディオ」キーを追加したくありません。

他の解決策はありますか?

4

3 に答える 3

4

The Amazing Audio Engine の Michael Tyson から彼のフォーラムで回答を得ました。

UInt32 allowMixing = NO;
AudioSessionSetProperty(kAudioSessionProperty_OverrideCategoryMixWithOthers, sizeof (allowMixing), &allowMixing);

または、The Amazing Audio Engine を使用している場合:
audioController.allowMixingWithOtherApps = NO;

(使用するオーディオ セッションによっては、デフォルトで NO に設定する必要があるようですが、The Amazing Audio Engine ではそうではありませんでした)

于 2014-01-08T19:56:55.330 に答える