Странный Аудио Сессионный Отчет о Крушении - PullRequest
0 голосов
/ 24 января 2012

Есть ли у кого-нибудь представление о том, что здесь может произойти, это отчет о сбое?

Это приложение для iPad 4.3+.


0 НФЛНовостиПлатформа 0x00131e59 НФЛНовостиПлатформа 577113

1 libsystem_c.dylib 0x30b1652f _sigtramp 38

2 AVFoundation 0x3659fbbd _ZL30AVAudioSessionPropertyListenerPvmmPKv 240

3 AudioToolbox 0x34f78f27 _ZN29AudioSessionPropertyListeners24CallPropertyListenersImpEmmPKv 274

4 AudioToolbox 0x34f79205 _ZN29AudioSessionPropertyListeners21CallPropertyListenersEmmPKv 240

5 AudioToolbox 0x34f78823 SSServer_AudioSessionDeferredListenerMessage 218

6 AudioToolbox 0x34f1f585 _XAudioSessionDeferredListenerMessage 116

7 AudioToolbox 0x34eb4373 mshMIGPerform 374

8 CoreFoundation 0x35600553 CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION 38

9 CoreFoundation 0x356004f5 __CFRunLoopDoSource1 140

10 CoreFoundation 0x355ff343 __CFRunLoopRun 1370

11 CoreFoundation 0x355824dd ​​CFRunLoopRunSpecific 300

12 CoreFoundation 0x355823a5 CFRunLoopRunInMode 104

13 GraphicsServices 0x3206cfed GSEventRunModal 156

14 UIKit 0x37946743 UIApplicationMain 1090

15 NFLНовостиПлатформа 0x000a7c67 NFLНовостиПлатформа 11367

16 НФЛНовостиПлатформа 0x000a7c20 НФЛНовостиПлатформа 11296


Любая помощь будет принята с благодарностью.

Ответы [ 2 ]

0 голосов
/ 04 декабря 2012

Мы только что отследили очень похожий сбой.

Наши оказались такими, как описано здесь:

https://github.com/mattgallagher/AudioStreamer/issues/6

В частности, MyAudioSessionInterruptionListener (илиимя обратного вызова передается AudioSessionInitialize), и его inClientData нельзя изменить после регистрации, поэтому обратный вызов всегда должен делать что-то разумное, даже если базовый объект был освобожден.

Решение, предложенное для AudioStream, состоит в том, чтобыиспользовать статическую переменную и убедиться, что она указывает на объект, который в данный момент заинтересован в обратном вызове, и никогда не указывает на освобожденный объект - важно не использовать inClientData.

0 голосов
/ 24 января 2012

Просто из включения AudioSessionPropertyListeners CallPropertyListenersImp я бы искал случай, когда вы устанавливаете функцию обратного вызова слушателя прерывания или изменения маршрута в вашем аудио сеансе, или в этой функции происходит что-то плохое, или мое подозрениевыпущен связанный объект, использованный в этой функции - возможно, даже значение, переданное в userInfo.

Мне также интересно, возможно, вы пытаетесь сделать что-то в обратном вызове, что нельзя сделать в фоновом потоке?

...