在一个移动的应用程序中,我尝试从sqlite数据库加载一个图像,并希望在一个mxml图像组件中显示它。加载bytearray工作正常,但当我将bytearray分配给图像组件时,我得到以下错误。
错误#2044:未处理的安全性错误:。text=错误#3226:当LoaderContext.allowCodeImport为false时,无法汇入SWF档。
我还尝试将图像保存并加载为base64字符串,但没有帮助。
即使我尝试了这样一件简单的事情:
var byteArray:ByteArray = img1.loaderInfo.bytes;
img2.source = byteArray;
只需将img 1的字节数组添加到空的img 2-同样的错误发生。
这里出了什么问题?非常感谢你的帮助,干杯,弗洛
2条答案
按热度按时间inkz8wg91#
我不明白为什么它认为你在加载swf字节。
试试这个小技巧,告诉我会发生什么:
其中
loader
显然是加载程序。23c0lvtd2#
你用的是mx还是spark
Image
?mx:Image
扩展了SWFLoader
,因此试图直接设置其源代码可能会导致安全错误,因为您实际上是在导入代码。spark:Image
Package 了BitmapImage
。您可能会有更好的运气。编辑我刚刚看到了你的评论。我在加载bytearray数据并将其设置为BitmapImage的源代码时也遇到了安全问题。我的问题是由于没有crossdomain.xml而导致的沙盒问题,但我从未使用过移动的SDK。