iOS 5.1 останавливает приложение в фоновом режиме - PullRequest
1 голос
/ 16 марта 2012

У меня в магазине есть опубликованное приложение (Cocos2d + UIKit), которое воспроизводит звуковые дорожки и нуждается в их воспроизведении, даже если iPhone заблокирован или приложение находится в фоновом режиме.

Раньше она работала безупречно до iOS 5.0, но начиная с iOS 5.1 приложение перезапускается: звук останавливается, когда пользователь разблокирует iPhone, он не отображается, при повторном открытии отображается заставка и начальное окно.

Я пытался отладить его, но когда я блокирую iPhone, xCode останавливается в EAGL ... Я также пытался воспроизвести треки в MPMoviePlayerViewController, и он делает то же самое.

Пожалуйста, помогите, я получаю много плохих отзывов каждый день из-за этой проблемы ...

Ответы [ 2 ]

1 голос
/ 18 марта 2012

Думаю, я наконец решил это, добавив:

 - (void)applicationDidEnterBackground:(UIApplication *)application
{
    [[CCDirector sharedDirector] stopAnimation];
}

- (void)applicationWillEnterForeground:(UIApplication *)application
{
    [[CCDirector sharedDirector] startAnimation];
      [Appirater appEnteredForeground:YES];
}

- (void)applicationWillResignActive:(UIApplication *)application
{
    [[CCDirector sharedDirector] pause];
}

- (void)applicationDidBecomeActive:(UIApplication *)application
{
    [[CCDirector sharedDirector] resume];
}

Я не уверен, почему до iOS 5.1 все работало нормально, но это исправило:)

1 голос
/ 17 марта 2012

Трудно сказать, не видя ваш код, но, как дикая догадка, попробуйте эту строку:

[[UIApplication sharedApplication] beginReceivingRemoteControlEvents];

Вставьте в ваш первый метод viewDidLoad контроллера.Дайте мне знать, если это решит проблему для вас.

------ Обновление -----

Еще одна вещь, которую нужно проверить для 5.1, это установить

[[AVAudioSession sharedInstance] setActive: ошибка YES: nil];

перед каждой командой воспроизведения AVAudioPlayer.

Это решило проблему с моим приложением-будильником, которое в 4.x прекрасно звучало во время будильника и начало отключаться в 5.1.Я обнаружил, что установка строки выше перед [AVAudioPlayer play] решила эту проблему для меня.

...