질문 / 문제 해결
- 개발환경: Mac, Unity (WebView)
- 사용중인 SDK:
- “@apps-in-toss/web-framework”: “^1.8.0”
- “react”: “19.2.3”
- “react-dom”: “19.2.3”
- 테스트 환경:
-
iPhone 17 (iOS 26.2)
-
앱인토스(ios simulator)
-
토스 v5.244.0 (intoss-private: …)
-
- 사운드 모듈: FMOD
- 테스트 방법:
-
앱인토스
- yarn dev 를 이용하여 granite dev 실행
- ios simulator 에서 앱 실행 (사운드 재생됨)
- 약 10초 뒤 백그라운드로 전환
- 약 30초 뒤 포그라운드로 전환 (사운드 재생됨)
- 1 ~ 4 를 10회이상 반복해도 문제 없이 사운드 재생됨
-
토스 빌드 후 테스트
- 앱 실행 (사운드 정상작동함)
- 약 5초 후 백그라운드 전환
- 약 5~10초 뒤 포그라운드로 전환 (사운드 재생안됨)
- 약 4~10초 뒤 백그라운드 전환
- 약 5~20초뒤 포그라운드로 전환 (사운드 재생됨)
- 5번 이후로는 몇 번을 백그라운드로 이동하든 상관없이 정상적으로 재생됨
-
우선 개발자 커뮤니티 및 SDK 문서를 다 확인해보았지만 원인을 도저히 찾을 수 없어 글 남깁니다.
백그라운드/포그라운드 사운드가 멈추는 문제가 발생하는데, 앱인토스의 경우 해당 문제를 발견하지 못했습니다.
토스 내 테스트 결과는 2회이상 백그라운드로 이동하거나 토스내 내비게이션 으로 다른 페이지를 이동시켜야 사운드가 정상작동되는것을 확인했습니다.
추가적으로 광고를 본 경우에 백그라운드 > 포그라운드 를 시도해도 정상적으로 사운드가 재생되는것을 확인했습니다.
이것을 제 역량으로 해결이 가능한 부분인지 알고 싶습니다.
granite.config.ts
webViewProps: {
type: 'game',
mediaPlaybackRequiresUserAction: false,
allowsInlineMediaPlayback: true,
overScrollMode: 'never',
},
로그 정보
| 사운드 | 시간 | 타입 | audioAction / event | 결과/상태 요약 | restored / saved |
|---|---|---|---|---|---|
| 재생안됨 | 2026-01-21 21:25:09 | webgl_suspend_audio | event=suspend_audio | PLAYING → fmodPausedAfter=true | savedMusicTime=4.608s |
| 재생안됨 | 2026-01-21 21:25:09 | webgl_foreground_restore | audioAction=force_resumed | unpause+seek 성공, fmodPaused=false | restoredPosition=4608ms |
| 재생안됨 | 2026-01-21 21:25:09 | webgl_fmod_resume | source=RestoreAudioAsync | fmodResumeSuccess=true, PLAYING | - |
| 재생됨 | 2026-01-21 21:24:59 | webgl_suspend_audio | event=suspend_audio | PLAYING → fmodPausedAfter=true | savedMusicTime=4.501s |
| 재생됨 | 2026-01-21 21:24:59 | webgl_foreground_restore | audioAction=force_resumed | unpause+seek 성공, fmodPaused=false | restoredPosition=4501ms |
| 재생됨 | 2026-01-21 21:24:59 | webgl_fmod_resume | source=RestoreAudioAsync | fmodResumeSuccess=true, PLAYING | - |