2017-04-07 5 views
0

RoboVM에서 오디오 파일을로드하는 데 문제가 없었지만 이제는 Multi-OS Engine을 사용하여 iOS에서 libGDX 게임을 실행하고 있습니다.MOE를 사용하여 LibGDX에서 오디오를로드하는 중 오류가 발생했습니다.

2017-04-07 17:27:13.871271-0500 FacesChess[2258:359966] OAL Error: -[OALAudioFile initWithUrl:reduceToMono:]: Could not open url file:///var/containers/Bundle/Application/344E150B-DDCA-45A7-B9A1-3EA14C60ECE6/FacesChess.app/assets/sounds/pop.mp3 (error code 0x7768743f: Unknown ext audio error) 2017-04-07 17:27:13.871403-0500 FacesChess[2258:359966] OAL Error: -[OALSimpleAudio internalPreloadEffect:reduceToMono:]: Could not load effect /var/containers/Bundle/Application/344E150B-DDCA-45A7-B9A1-3EA14C60ECE6/FacesChess.app/assets/sounds/pop.mp3

모에 플러그인 버전 : 1.3.3 LibGDX 버전 = 1.9.6이 내가 콘솔에서 볼 것입니다

Gdx.audio.newSound(Gdx.files.internal("sounds/pop.mp3")); 

그리고 :

오디오 파일을로드하려면 코드입니다

안드로이드 모듈의 assets 폴더에 mp3 파일을 저장했습니다. 오디오 파일만으로 문제가 발생했습니다. 이미지도 같은 폴더에 있으며 문제가 없습니다.

나는 다른 question을 읽었습니다 : "내 iOS 프로젝트에서 iOS는 사운드를 픽업하는 유일한 장소는/data/sounds 디렉토리에 있습니다". 하지만 데이터 폴더에서 파일을로드하는 방법을 찾지 못했습니다. 나는 어떻게 iOS 파일 시스템이 작동하는지 이해하지 못한다. 문서는 here을 찾을 수있다.

+1

아마도 도움이 될만한가요? http://www.badlogicgames.com/forum/viewtopic.php?f=11&t=25733#p101561 –

답변

0

문제는 iOS 오디오 프레임 워크가 MOE가 생성하는 application.jar에서 애셋을로드 할 수 없다는 것입니다. 따라서 오디오 리소스를 Xcode 프로젝트에 수동으로 추가해야합니다.

이렇게하려면 "폴더 참조 만들기"를 선택하여 Xcode로 안드로이드/자산의 자산 폴더를 드래그하십시오.

Make sure to select "Create Folder References"

폴더는 LibGDX는 하드 코드 경로를 사용하기 때문에 자산을 명명해야합니다. 폴더가 Xcode에서 파란색으로 나타나야합니다. 그렇지 않으면 계층 구조가 올바르게 묶이지 않습니다. badlogicgames.com forum의 답변 sAm_vdP에

This is how folder hierarchy should look like

감사합니다.