私はiOSアプリケーションを設定して、plistを使ってバックグラウンドでオーディオを再生する方法を知っています(iOSデバイスで別のアプリケーションを使用しているとき)。iOSデバイスで実行時にバックグラウンドオーディオ機能を有効/無効にする方法は?
のようないくつかのアプリケーション: - BLOOM - いくつかのラジオプレーヤー
は、この動作を有効または無効にするための基本的なUISwitchを提供します。
どのようにすればいいですか?
私はiOSアプリケーションを設定して、plistを使ってバックグラウンドでオーディオを再生する方法を知っています(iOSデバイスで別のアプリケーションを使用しているとき)。iOSデバイスで実行時にバックグラウンドオーディオ機能を有効/無効にする方法は?
のようないくつかのアプリケーション: - BLOOM - いくつかのラジオプレーヤー
は、この動作を有効または無効にするための基本的なUISwitchを提供します。
どのようにすればいいですか?
オーディオ再生コードを処理するメインクラスにタイプUIBackgroundTaskIdentifierのiVarを用意し、オーディオプレーヤーを開始する前にbeginBackgroundTaskWithExpirationHandler ....メソッドで初期化し、オーディオプレーヤーが完了するとendBackgroundTaskを使用します。
コード:あなたのAppDeletateで
@inerface AudioPlayerController : NSObject
{
UIBackgroundTaskIdentifier bgTaskID;
}
@end
@implementation AudioPlayerController
- (void) startPlayer
{
bgTaskID = [[UIApplication sharedApplication] beginBackgroundTaskWithExpirationHandler:NULL];
// Write code to start the audio player
}
// Call this when your program receives message of audio playing complete
- (void) audioPlayComplete
{
// Do the audio playing finish
if (bgTaskID != UIBackgroundTaskInvalid)
[[UIApplication sharedApplication] endBackgroundTask:bgTaskID];
}
@end
:
- (void)applicationDidEnterBackground:(UIApplication *)application {
[[YouPlayerClass sharedInstance] stop];
}
は、このように音声がアプリに入るバックグラウンドで停止します。
私はそれをテストします。しかし、この背景機能を有効または無効にするUISwitchには答えません。つまり、ユーザーはバックグラウンドでオーディオプレーヤーとしてこのアプリを使用したいと考えています。彼は欲しくない、彼はそれを無効にし、その場合、彼は別のアプリケーションに切り替えると、バックグラウンドでのオーディオの再生はもうありません。 – gluon
上記のコードは、プログラムによるバックグラウンドオーディオ再生をどのように行うことができるかを示すためのコードです。 UISwitchを使用して有効または無効にするには、別のBOOL iVarを使用し、条件付きでバックグラウンドタスクのコードを記述します。 –