2012-03-09 2 views
1

비 html5 호환 브라우저에서 swfsound를 사용하여 오디오 플레이어를 코딩하고 있습니다. 3 개의 샘플 파일 인 sound1, sound2 및 sound3이 있습니다.swfsound를 사용하는 동안 MP3 파일이 캐시됩니다.

몇 가지 테스트를 수행 한 후에 다른 파일과 함께 sound1을 변경했지만 놀랍게도 원본은 브라우저에 캐시 된 상태로 유지됩니다. 원본 파일을 삭제했으며 다른 폴더로 이동하지 않았습니다.

새 파일을 성공적으로 재현하는 유일한 방법은 "캐시 사용 안 함"기능을 활성화하는 것입니다. 새 파일을로드하기 전에 이전 파일 (있는 경우)을 언로드하는 방법이나 방법을 찾고 있습니다. 오디오 플레이어는 다른 mp3 파일을 재생할 것이며 현재 작동하고있는 방식대로 성공하지 못합니다.

어떤 도움을 주셔서 감사합니다.

답변

2

이것은 아주 오래되고 잘 알려진 문제로서 플래시의 개별 링크 캐싱을 피하기 위해 잘 알려져 있습니다. 각 통화마다 정크 URL을 URL 끝에 추가하기 만하면됩니다. 예를 들면 다음과 같습니다.

myUrlLoader.load(new URLRequest("http://sameOldSite.com/sameOldfile.mp3?" + new Date().toString())); 

코드가 테스트되지 않았으므로 정확하지 않을 수 있지만 아이디어를 얻을 수 있습니다. 새 Date를 추가하면 새 Date()를 만들거나 단일 날짜 객체를 재생할 때마다 고유 한 문자열을 얻고 toString() 또는 getTime() 또는 다른 것을 계속 호출 할 수 있습니다. 내가 생각하기로는 전역 타이머 객체로 같은 일을 할 수있다. 이 여분의 쓰레기 문자열은 GET 변수로 간주되어 사용되지 않으므로 버려집니다.

+0

위대한, 그것을 시도합니다! 귀하의 답변에 많은 감사드립니다! :) 길레르모 – Guillermo

+1

그것은 완벽하게, 많은 감사했습니다 :) – Guillermo

관련 문제