0

plist を使用して、iOS アプリケーションをセットアップし、バックグラウンドで (= iOS デバイスで別のアプリケーションが使用されている場合に) オーディオを再生する方法を知っています。

いくつかのアプリケーションのような: - BLOOM - 一部のラジオ プレーヤー

この動作を有効または無効にする基本的な UISwitch を提供します。

それを行う方法についてのアイデアはありますか?

4

2 に答える 2

5

オーディオ再生コードを処理するメイン クラスに UIBackgroundTaskIdentifier タイプの iVar を用意し、オーディオ プレーヤーを開始する前に beginBackgroundTaskWithExpirationHandler.... メソッドでこれを初期化し、オーディオ プレーヤーの完了時に endBackgroundTask を使用します。

コード:

@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
于 2012-05-08T19:24:40.513 に答える
0

AppDeletate で:

- (void)applicationDidEnterBackground:(UIApplication *)application {
    [[YouPlayerClass sharedInstance] stop];
}

したがって、オーディオはアプリがバックグラウンドに入るときに停止します。

于 2014-03-14T04:10:24.400 に答える