When Personal Voice access is first granted, a system bug appears to prevent personal voices from being returned from AVSpeechSynthesisVoice.speechVoices(). Additionally, AVSpeechSynthesizer.availableVoicesDidChangeNotification does not seem to fire after granting permission, despite being indicated explicitly by the docs.
Killing Vocable and restarting after granting permissions resolves the issue, and we've verified in the debugger that the system simply will not return personal voices otherwise. Since this behavior is likely to be resolved by a future iOS update, the cleanest course of action is to inform the user that they may need to restart their device if a Personal Voice they expect to see in Vocable is not present.
When Personal Voice access is first granted, a system bug appears to prevent personal voices from being returned from
AVSpeechSynthesisVoice.speechVoices()
. Additionally,AVSpeechSynthesizer.availableVoicesDidChangeNotification
does not seem to fire after granting permission, despite being indicated explicitly by the docs.Killing Vocable and restarting after granting permissions resolves the issue, and we've verified in the debugger that the system simply will not return personal voices otherwise. Since this behavior is likely to be resolved by a future iOS update, the cleanest course of action is to inform the user that they may need to restart their device if a Personal Voice they expect to see in Vocable is not present.