【问题标题】:使用 Actionscript 3.0 从 Dropbox 播放音频
【发布时间】:2021-01-01 16:19:03
【问题描述】:

只是寻找一些建议,希望有人能指出我正确的方向。

我正在尝试创建一个可以播放存储在 DropBox 上的音乐的 Flash MP3 播放器。以前从未使用过 ActionScript,所以我在学习过程中...

从我目前阅读的内容来看,我需要使用 URLRequest 来获取指向 mp3 文件的链接,然后使用 Sound 对象来加载文件并播放它。但是,当我测试我的 SWF 文件时,我没有收到音频。我也一直在阅读有关 URLSream 和 NETstream 的内容,但不确定如何将其与 Sound 对象一起使用。我不能 100% 确定我是否正确使用了 Sound,而且鉴于现在这是相当古老的技术,我很难找到合适的教程。

这是我一直在尝试的代码:

package  {
    //Dependencies
    import flash.display.MovieClip;
    import flash.media.Sound;
    import flash.media.SoundChannel;
    import flash.net.URLRequest;
    import flash.net.URLStream;
    
    import flash.display.*; 
    import flash.events.*; 
    import flash.net.*; 
    import flash.media.*; 
    
    //Class code
    public class soundObject extends MovieClip {
        
        //Variables
        var mySong:Sound = new Sound();
        
        //Init Code here
        public function soundObject() {
        
            var myRequest:URLRequest = new URLRequest("https://www.dropbox.com/s/[dropboxurl]/T-U-R-T-L-E%20POWER.mp3?dl=0")
            mySong.load(myRequest);
            mySong.addEventListener(Event.COMPLETE, onSoundLoad);
            
        }
        
        private function onSoundLoad(e:Event): void
        {
             mySong.play();
        }
    
}

}

【问题讨论】:

  • 脚本看起来不错,如果您尝试从其他文件(特别是 SWF)所在的同一位置加载音频文件,它很可能会工作。所以,有两个可能的问题。 1.跨域问题。 Flash 有一套严格的规则体系,它可以从 iternet 获得什么,什么不能获得(一旦获得就可以访问)。 2.更可能的是,DropBox下载链接并没有直接返回MP3文件数据,而是某种代理HTML页面开始下载,这很有意义对于浏览器,但对于 Sound 实例来说并没有那么多。
  • 我确实将文件放在了本地,并且运行良好。我知道该链接有效,因为我正在尝试重新创建另一个我见过的 Flash 播放器。该播放器必须在播放前下载 mp3 并对其进行缓存,因此需要弄清楚诀窍。
  • 好吧,如果该请求产生实际的 MP3 数据或 HTML 页面。
  • Dropbox 共享链接 URL 默认不直接返回文件数据;它指向一个 HTML 预览页面。您可以修改它以直接访问文件内容,如下所述:help.dropbox.com/files-folders/share/force-download
  • @Organis。我还没有研究过 URLLoader。我会检查一下。谢谢。

标签: actionscript-3 flash actionscript dropbox flash-cs6


【解决方案1】:

所以我想通了,伙计们......令人惊讶,惊讶,这是相当简单的事情。

在发布设置中,我将其设置为“仅限本地”。当我更改此“仅限网络”时,链接开始神奇地工作。

感谢您的帮助。终于到了:D

编辑:以防万一,我确实也将 ?dl=0 更改为 ?dl=1

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-11-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多