1

バックグラウンドで音楽を再生できるアプリがありますが、アプリがバックグラウンドで音楽の再生を停止すると、何らかの理由で一部のユーザーに問題が発生します。自分のiPhoneでこのバグに何度か気づきましたが、なぜこれが起こるのかわかりませんか?AVAudioFoundation.frameworkを使用しています

まず、サブクラス化してremoteEventsに登録しUIWindowます。

@interface MelomanWindow : UIWindow

@property (nonatomic, assign) UIResponder *responder;

- (void)remoteControlReceivedWithEvent:(UIEvent *)event;

@end
--------------------------------------
@implementation MelomanWindow

@synthesize responder = _responder;
- (void)remoteControlReceivedWithEvent:(UIEvent *)receivedEvent {
[self.responder remoteControlReceivedWithEvent:receivedEvent];
}
@end

そしてでAplicationDelegate.m

[application beginReceivingRemoteControlEvents];
self.window.responder = [[ApplicationAudioService sharedInstance] playerViewController];

その後、私ViewControllerの中でこれを行います:

- (id)init {
...
AVAudioSession *audioSession = [AVAudioSession sharedInstance];
[audioSession setCategory:AVAudioSessionCategoryPlayback error:nil];
[audioSession setActive:YES error:nil];
audioSession.delegate = self;
...
}

アプリを終了するとバグが消えます。また、このバグが発生したときにリモートコントローラーイベントが機能しません。また、このバグが表示されたときにステータスバーに「再生」アイコンが表示されない。

4

0 に答える 0