标签: air

Adobe AIR:从服务器处理JSON对象

我有一个脚本,通过Ajax调用从远程服务器检索对象.服务器以JSON表示法返回对象.

但是,在Adobe AIR中,出于安全原因,使用eval()存在限制.所以我能够从远程服务器获得回复,但不能将它们变回JavaScript对象.这个问题有解决方法吗?我想将JSON用于我的JavaScript对象,因为它几乎可以立即使用.

旁注:我确实理解强制问题的安全隐患,但我会为竞争做一些快速的应用程序开发,因此该程序只是一个快速的原型,而不是用于生产目的.尽管如此,如果有一个比我现在想要做的更好的替代方案,那将会很棒


更新:

感谢Theojsight的回答;

我今天学到的一件重要事情是,我实际上可以通过使用它来使用ActionScript库

<script src="lib/myClasses.swf" type="application/x-shockwave-flash"></script>
由Adobe AIR扩展的标记.查看Theo的链接了解更多详情!

javascript air ajax json

6
推荐指数
1
解决办法
4789
查看次数

从Adobe flex/AIR访问mysql

是否可以通过Adobe AIR/Flex应用程序直接访问MySql数据库?
如果没有,那么下一个最佳选择是什么?

mysql apache-flex air adobe

6
推荐指数
2
解决办法
1万
查看次数

<mx:HTML>组件的"查看源"的等效项

将控件的位置设置为某个站点后.那我怎么能看看相关的HTML呢?我注意到,一旦我设置了Location,htmlText就会变为null,反之亦然......那么如何用TEXT格式查看控件中显示的HTML呢?

apache-flex air actionscript-3

6
推荐指数
1
解决办法
1583
查看次数

as3 | 如何使用Adobe AIR导出PNG

我试图使用这个类导出透明的 PNG文件:com.adobe.images.PNGEncoder;

var pngSource:BitmapData = new BitmapData (stage.stageWidth, stage.stageHeight);
pngSource.draw(stage);
var ba:ByteArray = PNGEncoder.encode(pngSource);
var file:File = File.desktopDirectory.resolvePath("test.png");
var fileStream:FileStream = new FileStream();
fileStream.open(file, FileMode.WRITE);
fileStream.writeBytes(ba);
fileStream.close();
Run Code Online (Sandbox Code Playgroud)

一切正常 - 除了透明问题......

如果我能让Flash的舞台颜色变得透明,那么它会起作用 - 但不幸的是 - 没有这样的选择.

我有什么选择吗?

air adobe png actionscript-3 flash-cs5

6
推荐指数
1
解决办法
4388
查看次数

任何人都可以提供Adobe Air编译的iOS应用程序示例吗?

这是我的第一个问题.我当然希望我做得对.

我在网上搜索了这个,发现有线应用程序正在使用Adobe Flash编译的证据,但就是这样.有很多关于Adobe网站赞不绝口的话题,但是苹果现在使用CS 5.5更新将这些应用程序带到了App Store吗?

那么,任何人都可以估算在App Store中使用Adobe Air编写的应用程序数量吗?任何例子都会很棒.

非常感谢Alistair

air flash app-store ios

6
推荐指数
1
解决办法
6323
查看次数

这是真的吗?基于Adobe AIR的Android开发没有前途

这是真的吗?基于Adobe AIR的Android开发没有前途.我听说,Android不再支持ADOBE AIR/FLASH系统.这是真的吗?我听说,HTML5是最好的替代品.这些要点是真的吗?

air flash html5 adobe android

6
推荐指数
1
解决办法
5818
查看次数

使用服务器套接字监听AS3(AIR)客户端中的传入连接

我设法创建了一个C#Server,它使用发送文件到AS3(AIR)客户端sockets.在AS3方面,我正在使用该flash.net.Socket库来接收数据TCP.

这是它的工作原理:
- >我打开我的服务器,它监听客户端(我可以创建一个连接设备列表);
- >我打开我的客户端,它会自动接收数据;

接收数据的触发事件是在客户端上进行的,即我只是打开服务器,当客户端打开时,它获取数据,触发这些事件:

socket.addEventListener(Event.CONNECT, onConnect); -> to connect to the server  
socket.addEventListener(Event.SOCKET_DATA, onDataArrival); -> to receive the data  
Run Code Online (Sandbox Code Playgroud)

现在我想做一些不同的事情.我不想在客户端上触发它,我希望服务器这样做,即,我想打开我的客户端,并在服务器上放入客户端将获取数据.

那么为什么我要尝试让客户端成为客户端/服务器呢?好吧,因为我的服务器是一台机器,而我的客户端是连接服务器的XXX移动设备,这是我实现这一目标的方法.

所以,鉴于我刚才所说的,我设法创建了我的AS3客户端/服务器应用程序,使用该flash.net.ServerSocket库就像我想要的那样.

首先我把客户端听了:

serverSocket.bind(portNumber, "10.1.1.212");
serverSocket.addEventListener(ServerSocketConnectEvent.CONNECT, onConnectServer);
serverSocket.listen();
Run Code Online (Sandbox Code Playgroud)

然后我使用了接收数据 flash.net.Socket Event.SOCKET_DATA

这就是它.像我想要的那样工作.
但是,它flash.net.ServerSocket与移动设备不兼容,但......

所以这是我的问题:我需要从C#服务器发送文件(需要监听客户端以便我可以创建连接设备列表)到AS3(AIR)客户端,但我必须定义哪个客户端正在获取数据服务器,客户端需要随时准备接收数据,因此,听,但有很多,这就是我认为它们作为客户端的原因.

我的问题是:有没有办法让客户端监听传入的连接并在事件发生时触发事件,而不使用AS3中的服务器套接字?

此外,如果您有不同的方法来实现我的目标,而不使用C#服务器< - > AS3客户端/服务器逻辑,请随时提出您的意见.

sockets air serversocket actionscript-3

6
推荐指数
1
解决办法
7445
查看次数

加载初始内容Adobe air时出现ADL错误

我是AdobeAir的新手.我通过以下链接开始使用helloworld应用程序.

http://help.adobe.com/en_US/air/build/WS144092a96ffef7cc4c0afd1212601c9a36f-8000.html
Run Code Online (Sandbox Code Playgroud)

我能够成功编译HelloWorld.mxml文件,但我无法通过以下命令adl HelloWorld-app.xml运行该应用程序.加载初始内容时错误消息说..错误.

另外我附加了HelloWorld-app.xml

<?xml version="1.0" encoding="UTF-8"?>
<application xmlns="http://ns.adobe.com/air/application/1.0">
    <id>samples.flex.HelloWorld</id>
    <version>0.1</version>
    <filename>HelloWorld</filename>
    <initialWindow>
        <content>HelloWorld.swf</content>
        <visible>true</visible>
        <systemChrome>none</systemChrome>
        <transparent>true</transparent>
        <width>400</width>
        <height>200</height>
    </initialWindow>
</application>
Run Code Online (Sandbox Code Playgroud)

和HelloWorld.mxml是

<?xml version="1.0" encoding="utf-8"?> 
<s:WindowedApplication xmlns:fx="http://`enter code here`ns.adobe.com/mxml/2009" 
                       xmlns:s="library://ns.adobe.com/flex/spark" 
                       xmlns:mx="library://ns.adobe.com/flex/mx" 
                       title="Hello World"> 

    <s:Label text="Hello AIR" horizontalCenter="0" verticalCenter="0"/> 
</s:WindowedApplication>
Run Code Online (Sandbox Code Playgroud)

请帮我.

air

6
推荐指数
3
解决办法
8359
查看次数

PackageInspectionFailed FlashBuilder,Adobe AIR和iOS开发时出错

使用FB4.7 Premium,Air 3.4构建iOS应用程序.此时,只是一个非常简单的测试框架.突然,构建器抛出PackageInspectionFailed错误,并且不会完成构建.没有解释为什么.模拟器运行正常.

我应该指出,我一直在构建和打包这一整天直接到我的iPad没有问题.突然间,我收到此错误,应用程序不再构建.我做的最后一件事是添加这一行: text.autoSize = TextFieldAutoSize.LEFT;

更新

在删除这些编辑后,我现在遇到一个新错误(这是进展吗?)ApplicationVerificationFailed.再一次没有进一步的信息.我没有更改证书,构建参数或其他任何东西.

有趣的是,手动将生成的.ipa拖动到iTunes,然后与iPad同步确实安装了应用程序,没有错误.它只是为我的测试/调试过程添加了更多的步骤.

这个错误是什么?我应该寻找哪些可能导致错误的条件?

请投票选择Adobe Bugbase

我在这里提交了3.9的错误:请投票:https://bugbase.adobe.com/index.cfm?event = newBug

Sarah Northway在此处有另一个3.8的错误报告:请投票:https://bugbase.adobe.com/index.cfm?event = bug&id = 3650414

让我们看一下Adobe的观点 - 需要提供有关此错误原因的更多信息.

air flash-builder ios packageinspectionfailed

6
推荐指数
1
解决办法
4064
查看次数

如何在Flex应用程序中运行外部SWF?

编辑:由于答案我更改了发布的代码.我已经添加了该 Security.allowDomain("*") 行,该行会引发错误.那么,怎么做呢?

我想将Action Script 3.0应用程序运行到Flex应用程序中.为此,我做了以下事情:

<?xml version="1.0" encoding="utf-8"?>
<mx:WindowedApplication windowComplete="loadSwfApplication()" xmlns:mx="http://www.adobe.com/2006/mxml">

    <mx:Script>
        <![CDATA[
            private function loadSwfApplication()
            {
                // The next line throws me an error.
                Security.allowDomain("*");

                var urlRequest:URLRequest = new URLRequest("path/to/the/application.swf");
                swfLoader.addEventListener(Event.COMPLETE, loadComplete);
                swfLoader.load(urlRequest);
            }

            private function loadComplete(completeEvent:Event)
            {
                var swfApplication:* = completeEvent.target.content;
                swfApplication.init();  // this is a Function that I made it in the Root class of swfApplication
            }
        ]]>
    </mx:Script>

    <mx:SWFLoader id="sfwLoader"/>

</mx:WindowedApplication>
Run Code Online (Sandbox Code Playgroud)

问题是在调用swfApplication.init();AIR Player时会抛出异常:

安全沙箱冲突:调用者文件:///path/to/the/application.swf无法访问app所拥有的阶段:/SWFApplicationLoader.swf.

这是因为application.swf我在某处使用这样的舞台:

if (root.stage != null)
    root.stage.addEventListener(Event.REMOVED, someFunction); …
Run Code Online (Sandbox Code Playgroud)

air flash actionscript-3 flex4

5
推荐指数
1
解决办法
1万
查看次数