2013-01-18 50 views
1

我有以下代碼:Android和Flash Professional中CS 5 Adob​​e AIR的聲音:流式傳輸錯誤

import flash.media.Sound; 
import flash.net.URLRequest; 

function playBase():void 
{ 

    var urlRequest:URLRequest = new URLRequest("mybase.mp3"); 
    var sound:Sound = new Sound(); 

    sound.load(urlRequest); 
    sound.play(); 

} 

playBase() 

我有mybase.mp3到我的圖書館部分,但是調試輸出告訴我:

Error #2044: Unhandled IOErrorEvent:. text=Error #2032: Stream Error. 

爲什麼?

回答

2

的URLRequest用於加載外部文件,因此無論是

1:保存MP3文件作爲「mybase.mp3」到正在運行的Flash/AIR應用程序相同的目錄中,而不是在您的圖書館。

OR

2:在您的圖書館使用的名稱一樣MyBaseSound右鍵單擊MP3文件>屬性>和出口的動作。一旦你這樣做,你應該能夠引用的聲音就像一類,像這樣:

var s:MyBaseSound = new MyBaseSound(); 
s.play() 

編輯

帶選件1去,你可能會想要去發佈設置,然後到你Android設置區域和包含文件下添加該文件。這應該將其添加到您的應用程序包/軟件包。 (在CS6中它是小扳手圖標,但在CS5中,我不記得爲Android設置的確切步驟,但我知道iOS設置頁面有一個類似的包含文件選項。)

+0

嗨,感謝回覆。它的工作原理,但我需要動態調用mp3的東西。我能怎麼做? –

+0

你究竟是什麼意思動態?選項1在比較時更具動態性,我假設這是「動態」的意思。它在技術上加載Flash應用程序本身之外的mp3文件。 – ToddBFisher

+0

選項1不適用於Android應用程序... 我將該文件保存在mybase.mp3「生成」的文件夾中。 Swf文件(或項目所在的文件夾Fla),但對於Android而言,無關緊要。 –