Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/flash/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Actionscript 3 AIR/Android-从装载的OBB/扩展文件播放视频_Actionscript 3_Flash_Video_Air_Apk Expansion Files - Fatal编程技术网

Actionscript 3 AIR/Android-从装载的OBB/扩展文件播放视频

Actionscript 3 AIR/Android-从装载的OBB/扩展文件播放视频,actionscript-3,flash,video,air,apk-expansion-files,Actionscript 3,Flash,Video,Air,Apk Expansion Files,我有大约125MB的视频文件需要从扩展文件(OBB)播放。OBB文件本身已经就位,并使用a成功“装载”,因此我可以使用传统方法访问文件,如file类、Loader类等 我使用NetStream和NetConnection类来播放视频文件,但问题是要播放视频文件,视频文件需要与尝试播放它的SWF(或子文件夹)位于同一文件夹中。这也在Adobe文档中: 播放本地文件 Flash播放器内和应用程序安全之外的空中内容 沙盒,您可以播放存储在同一个沙盒中的本地视频文件 作为SWF文件或子目录的目录;然而,

我有大约125MB的视频文件需要从扩展文件(OBB)播放。OBB文件本身已经就位,并使用a成功“装载”,因此我可以使用传统方法访问文件,如file类、Loader类等

我使用NetStream和NetConnection类来播放视频文件,但问题是要播放视频文件,视频文件需要与尝试播放它的SWF(或子文件夹)位于同一文件夹中。这也在Adobe文档中:

播放本地文件

Flash播放器内和应用程序安全之外的空中内容 沙盒,您可以播放存储在同一个沙盒中的本地视频文件 作为SWF文件或子目录的目录;然而,你不能 导航到更高级别的目录

尽管如此,出于好奇,我还是尝试播放该流,但它抛出了一个StreamNotFound错误(应该是这样的,因为视频文件与SWF不在同一文件夹/子文件夹中)。我的直觉是,这是一个安全沙箱的东西,有办法绕过它,但我找不到它


非常感谢您的帮助。

最终,我能够使用内置as3 VideoPlayer类从车载obb播放视频文件,它似乎能够从任何文件夹播放视频。

最终,我能够使用内置as3 VideoPlayer类从车载obb播放视频文件,它似乎可以从任何文件夹播放视频。

如果是安全沙箱问题,它会告诉您。我的猜测是它无法发现该文件。我不知道你所说的“挂载”是什么意思,但obb文件只是一个zip文件,因此它应该在应用程序安全沙盒树中解包,以便其文件可以访问。如果你做任何事情,你只是在找麻烦。据我所知,OBB文件是我想要的。因此,我使用Android SDK中的“jobb”命令行工具来创建OBB文件。我使用的电子设备使我能够访问OBB,而无需打开它,因此,无论出于何种目的,都可以“安装”它。如果我将其解压缩到任何可写文件夹中,NetStream仍然无法播放该文件,因为视频文件仍然不会与SWF位于同一文件夹中。不过,我将对此进行探讨。谢谢。这种方法的问题是OBB的位置可能会随着设备的不同而变化,并且不能保证用户不能通过简单的清洁来删除OBB。这就是为什么至少建议将该文件移动到一个安全的位置开始,甚至最好将其解压缩到正确的位置。就我个人而言,我在应用程序根目录中查找我的文件,如果它们不存在,则在我的OBB中查找它们,然后在我的应用程序根目录中复制它们。用户不必等待任何东西,过了一段时间,我的所有文件都在根目录中。谢谢,我知道这是如何工作的,但是所有的解包/复制不会增加应用程序使用的空间吗?我的应用程序大约有300MB,所以任何解包都需要相同的空间。因此,对于安装,我需要大约600MB。另外,谷歌明确不建议删除OBB文件:谷歌也不建议删除:“但是,如果可能,最好使用一种扩展文件格式,允许您直接从文件中读取,而不是要求您解压缩数据”@Nedudgi您能告诉我您是如何将扩展名添加到adobe flash的吗?我是adobe的新手,想测试一下,谢谢。如果这是一个安全沙箱问题,它会告诉你。我的猜测是它无法发现该文件。我不知道你所说的“挂载”是什么意思,但obb文件只是一个zip文件,因此它应该在应用程序安全沙盒树中解包,以便其文件可以访问。如果你做任何事情,你只是在找麻烦。据我所知,OBB文件是我想要的。因此,我使用Android SDK中的“jobb”命令行工具来创建OBB文件。我使用的电子设备使我能够访问OBB,而无需打开它,因此,无论出于何种目的,都可以“安装”它。如果我将其解压缩到任何可写文件夹中,NetStream仍然无法播放该文件,因为视频文件仍然不会与SWF位于同一文件夹中。不过,我将对此进行探讨。谢谢。这种方法的问题是OBB的位置可能会随着设备的不同而变化,并且不能保证用户不能通过简单的清洁来删除OBB。这就是为什么至少建议将该文件移动到一个安全的位置开始,甚至最好将其解压缩到正确的位置。就我个人而言,我在应用程序根目录中查找我的文件,如果它们不存在,则在我的OBB中查找它们,然后在我的应用程序根目录中复制它们。用户不必等待任何东西,过了一段时间,我的所有文件都在根目录中。谢谢,我知道这是如何工作的,但是所有的解包/复制不会增加应用程序使用的空间吗?我的应用程序大约有300MB,所以任何解包都需要相同的空间。因此,对于安装,我需要大约600MB。另外,谷歌明确不建议删除OBB文件:谷歌也不建议删除:“但是,如果可能,最好使用一种扩展文件格式,允许您直接从文件中读取,而不是要求您解压缩数据”@Nedudgi您能告诉我您是如何将扩展名添加到adobe flash的吗?我是adobe的新手,想测试一下,谢谢。