Workaround an issue in the vivox-sdk that causes the iOS recording notification to be displayed if the application is backgrounded while the sdk is initialized and the AVAudioSessionCategory is set to Ambient
[at]Ethan.Geller, [at]Josh.Adams, [at]Peter.Sauerbrei, [at]Chris.Varnsverry
[FYI] Brian.Zaugg
#ROBOMERGE-OWNER: michael.kirzinger
#ROBOMERGE-AUTHOR: michael.kirzinger
#ROBOMERGE-SOURCE: CL 8292997 via CL 8293014 via CL 8293252
#ROBOMERGE-BOT: (v401-8057353)
[CL 8293259 by michael kirzinger in Main branch]
#rb chris.bunner
#ROBOMERGE-SOURCE: CL 8129558 via CL 8129566 via CL 8129567 via CL 8133405
#ROBOMERGE-BOT: (v401-8057353)
[CL 8159314 by peter sauerbrei in Main branch]
#android
#ROBOMERGE-SOURCE: CL 8119376 via CL 8119377 via CL 8119818 via CL 8123228
#ROBOMERGE-BOT: (v401-8057353)
[CL 8124927 by chris babcock in Main branch]
#rb Ethan.Geller
[CODEREVIEW] Ethan.Geller, Aaron.McLeran
#ROBOMERGE-OWNER: brian.zaugg
#ROBOMERGE-AUTHOR: brian.zaugg
#ROBOMERGE-SOURCE: CL 7310390 via CL 7310462 via CL 7310549
#ROBOMERGE-BOT: (v371-7306989)
[CL 7311269 by brian zaugg in Main branch]
#jira UE-75829
#rb lauren.ridge
#ROBOMERGE-SOURCE: CL 7096679 in //UE4/Release-4.23/...
#ROBOMERGE-BOT: RELEASE (Release-4.23 -> Main) (v367-6836689)
[CL 7096687 by jason stasik in Main branch]
#jira UE-76505
#rb none
#ROBOMERGE-SOURCE: CL 7076056 in //UE4/Release-4.23/...
#ROBOMERGE-BOT: RELEASE (Release-4.23 -> Main) (v367-6836689)
[CL 7076073 by jason stasik in Main branch]
Solve issues during start-up where the HW window can be created/lost before the game can use it or OS displaying android ANR message if GT is too busy to respond to system events.
Window access is guarded with mutex that guarantees a valid window HW exists when locked.
Rendering thread is blocked when the window is lost (to prevent RHIs accessing surfaces belonging to the lost window)
Window dimensions are cached so that most window dimension queries just read from the cache.
[FYI] chris.babcock, Ryan.Vance
#rb jack.porter, chris.babcock,Dmitriy.Dyomin
#ROBOMERGE-OWNER: allan.bentham
#ROBOMERGE-AUTHOR: allan.bentham
#ROBOMERGE-SOURCE: CL 7062033 via CL 7062034 via CL 7062345
#ROBOMERGE-BOT: (v367-6836689)
[CL 7062346 by allan bentham in Main branch]
#rb jack.porter
#ROBOMERGE-SOURCE: CL 7038917 via CL 7038918 via CL 7045729
#ROBOMERGE-BOT: (v367-6836689)
[CL 7045906 by dmitriy dyomin in Main branch]
#jira
#rb none
#rnx
#ROBOMERGE-SOURCE: CL 6980495 in //UE4/Release-4.23/...
#ROBOMERGE-BOT: RELEASE (Release-4.23 -> Main) (v367-6836689)
[CL 6980497 by ben marsh in Main branch]
- Added function to overridde it temporarily
- Using the override in Kairos
- Make sure gamethread wakes up while doing these blocks
- Removed some old pre-IOS 10 code
#rb andrew.grant, peter.sauerbrei
#ROBOMERGE-SOURCE: CL 6897698 via CL 6897699 via CL 6897700 via CL 6905798
#ROBOMERGE-BOT: (v366-6836689)
[CL 6907928 by josh adams in Main branch]
[REVIEW] [at]josh.adams
#ROBOMERGE-SOURCE: CL 6724734 via CL 6724792 via CL 6740114 via CL 6740134 via CL 6757061
#ROBOMERGE-BOT: (v365-6733468)
[CL 6757305 by michael kirzinger in Main branch]
#jira UE-66039
#4.22
#ios
#rb jack.porter
On applicationWillResignActive (FAppEntry::Suspend(false)) set a 0.5 sec delay before restarting the audio on resume, since another Suspend event may occur when pulling down the notification center (Suspend-Resume-Suspend). When the second Suspend occurs, the delay is reset.
Phone calls, notifications, backgrounding the app will reset the delay before resuming the game, so the audio will restart immediately on applicationDidBecomeActive(FAppEntry::Suspend(false))
Only when pressing the multitasking window, without sending the app to background, the audio is restarted on FAppEntry::Tick.
[CL 5467466 by Sorin Gradinaru in Dev-Mobile branch]