使用脚本嵌入资源

时间:2016-01-27 11:19:00

标签: actionscript-3 flex embedded-resource

我必须使用1000个声音文件(总大小约1GB)创建库/支持应用程序文件。为此,我打算使用以下代码:

package Resources.questions
{
    public class HindiVoice
    {
        [Embed(source="1.mp3",symbol="c1")]
        private static const c1:Class;
        [Embed(source="2.mp3",symbol="c2")]
        private static const c2:Class;
        //To-Do add 1000 files with symbol definition
        public function HindiVoice()
        {

        }
    }
}

上面的文件很难维护。我可以使用" for loop"迭代从1到1000并在项目中嵌入声音文件?我使用的是Flash开发人员4.7。

实际上,如果某个对象允许元数据添加会有助于这种努力,伪代码就像:

public function Hindi()
        {
            for(var i=3;i<=1000;i++){
                var o = new <some object for metadata embed> "@[embed(source='" +i +".mp3',symbol='c"+i+"')]";
                this.addChild(o);

            }
        }

1 个答案:

答案 0 :(得分:0)

似乎flex不支持嵌入大文件。我尝试嵌入大型文件导致应用程序关闭而没有警告(发现设计时的这种行为没有通过编译进行测试)。

我没有继续嵌入,但可能的方法可能是: 1)拥有一个带有资产的密码保护的zip文件。 2)使用其他工具(如java)进行封装,使用契约代码从那里访问文件。