Did you try your app out on iOS 9 and discover that the audio or UI was stuttering?
I just spent a few hours with Instruments and an iOS 9 beta (the July 8, 2015 iOS 9 beta 13A4293g) trying to figure out why Modern Metronome was skipping a beat. Timers would sometimes fail to start an animation at the correct time, and some Audio Queue requests weren't getting fired at all.
Funny, everything worked fine in iOS 8.
I optimized several methods that seemed to be problematic, but the stuttering remained. I finally got down to these two calls:
[AVAudioSession setCategory:withOptions:error:]
[AVAudioSession setActive:error:]
It turned out that I was calling them both every time that I created an Audio Queue. On iOS 8, these repeated calls didn't have any noticeable effect. On the iOS 9 beta, they have larger performance consequences than Instruments implies.
I moved those two lines so they would only get called once, and my stuttering disappeared. I hope this helps you!
Saturday, July 18, 2015
Subscribe to:
Posts (Atom)