Actionscript 3 AIR/Android-从装载的OBB/扩展文件播放视频
我有大约125MB的视频文件需要从扩展文件(OBB)播放。OBB文件本身已经就位,并使用a成功“装载”,因此我可以使用传统方法访问文件,如file类、Loader类等 我使用NetStream和NetConnection类来播放视频文件,但问题是要播放视频文件,视频文件需要与尝试播放它的SWF(或子文件夹)位于同一文件夹中。这也在Adobe文档中: 播放本地文件 Flash播放器内和应用程序安全之外的空中内容 沙盒,您可以播放存储在同一个沙盒中的本地视频文件 作为SWF文件或子目录的目录;然而,你不能 导航到更高级别的目录 尽管如此,出于好奇,我还是尝试播放该流,但它抛出了一个StreamNotFound错误(应该是这样的,因为视频文件与SWF不在同一文件夹/子文件夹中)。我的直觉是,这是一个安全沙箱的东西,有办法绕过它,但我找不到它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文件或子目录的目录;然而,
非常感谢您的帮助。最终,我能够使用内置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的新手,想测试一下,谢谢。