How do I play the default Phone ringtone programmatically?

寵の児 提交于 2019-12-01 00:48:01

问题


I have been working on a conference related app. I want to show ringing notification for the incoming call. I have tried with AVAudioPlayer, and it worked fine for custom sounds. My question is, is it possible to get default ringtone from iPhone (user selected tone in settings) and play for my app?

thanks for your valuable suggestions...


回答1:


No, no SDK API for get iPhone ringtones.

But you can download those from another links and add to your project




回答2:


Someone has asked a similar question here but overall it does not appear possible, at least if you want to distribute your application through the App Store. On a jailbroken phone, you may find this answer useful.




回答3:


The recommended way is to use CallKit. Your VoIP app will then get a lot of stuff for "free". When you inject an incoming call using CallKit, iOS will automatically play the proper ringtone.

https://developer.apple.com/documentation/callkit

There are a lot of things that CallKit handles for you. Things like:

  • showing a proper incoming call screen when the phone is locked
  • what happens if the user is already on another call
  • "Do not disturb" is on (either driving or sleeping)
  • the phone is set to silent
  • playing the proper ringtone


来源:https://stackoverflow.com/questions/12577811/how-do-i-play-the-default-phone-ringtone-programmatically

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!