gpt4 book ai didi

ios - 使用 AIR 3.4 创建的应用程序无法在 AIR 3.7 中运行

转载 作者:行者123 更新时间:2023-11-28 22:34:53 24 4
gpt4 key购买 nike

我最近将 AIR 3.7 叠加到 Flex 4.9.1 SDK 中。我创建的 iOS 应用程序与 3.4(我创建它时使用的)完美配合。该应用程序的一部分是拍照或从相机胶卷中获取照片(并保存压缩版本)但是,在 3.7 中,一旦调用 MediaEvent.Complete 代码(代码如下),应用程序就会挂起任何想法,我需要吗添加 loadercontext?

protected function onComplete(event:MediaEvent):void {


//Busy Indicator

bi = new UploadAlert(); //upload Alert is a component I created to display a Busy indicator
bi.x = this.width/2 - 150;
bi.y = this.height/2 - 150;

//Get number of elements
allElements = this.numElements;



this.addElementAt(bi, allElements);





var cameraUI:CameraUI = event.target as CameraUI;


var mediaPromise:MediaPromise = event.data;

var mpLoader:Loader = new Loader();
mpLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, onMediaPromiseLoaded);

mpLoader.loadFilePromise(mediaPromise);


}

private function onMediaPromiseLoaded(e:Event):void
{
var mpLoaderInfo:LoaderInfo = e.target as LoaderInfo;
mpLoaderInfo.removeEventListener(Event.COMPLETE, onMediaPromiseLoaded);

this.imageProblem.source = mpLoaderInfo.loader;






var bitmapDataA:BitmapData = new BitmapData(mpLoaderInfo.width, mpLoaderInfo.height);
bitmapDataA.draw(mpLoaderInfo.content,null,null,null,null,true);



var bitmapDataB:BitmapData = resizeimage(bitmapDataA, int(mpLoaderInfo.width / 4), int(mpLoaderInfo.height/ 4)); // function to shrink the image





var c:CameraRoll = new CameraRoll();
c.addBitmapData(bitmapDataB);

var now:Date = new Date();
var f:File = File.applicationStorageDirectory.resolvePath("IMG" + now.seconds + now.minutes + ".jpg");
var stream:FileStream = new FileStream()
stream.open(f, FileMode.WRITE);

// Then had to redraw and encode as a jpeg before writing the file


var bytes:ByteArray = new ByteArray();
bytes = bitmapDataB.encode(new Rectangle(0,0, int(mpLoaderInfo.width / 4) , int(mpLoaderInfo.height / 4)), new JPEGEncoderOptions(80), bytes);




stream.writeBytes(bytes,0,bytes.bytesAvailable);
stream.close();




imagefile = f;
deleteFlag = 1;

this.removeElementAt(allElements);

this.btnRotate.enabled = true;
this.btnDelete.enabled = true;
}

最佳答案

好的,问题不在于我的代码。事实上,当我覆盖 AIR 3.7 时,air-config.xml、flex-config.xml 和 airmobile-config.xml 的文件仍然针对太低版本的 Flash Player。它是 11.1 和 swf 版本 14。

应该分别是11.5和18。一旦我更改了这些文件,它就完美地工作了!

关于ios - 使用 AIR 3.4 创建的应用程序无法在 AIR 3.7 中运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16380889/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com