从Adobe flex / AIR访问mysql

时间:2008-12-30 13:25:02

标签: mysql flex air adobe

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

6 个答案:

答案 0 :(得分:5)

我不得不与Abdullah不同意(尽管尊敬!)将AIR客户端构建到AIR中会“导致出现问题并解决安全问题” - 这通常是如何完成的(例如,Java和.NET,两者都有)其运行时包装各种ODBC客户端) - 但两张海报都是正确的:唯一的方法是将某种服务接口编码到AIR应用程序中(使用FlexService类,如WebService,HTTPService等)和补充服务器端接口(例如,通过PHP进行REST,然后将与MySQL数据库连接)。对于简单的应用程序,它可能有点痛苦,但目前,这就是我们所有的。 :)

祝你好运!

答案 1 :(得分:1)

我没有尝试过,但有一些项目在AS3中实现本机驱动程序以连接到mysql服务器。最后,它只是一个套接字连接,允许AIR应用程序打开套接字。 看看http://code.google.com/p/assql/

答案 2 :(得分:0)

我不建议直接访问数据库。我描述了我是如何做到的here

答案 3 :(得分:0)

不,虽然AIR确实内置了本地(客户端)SQLite数据库。您真的不希望您的客户端应用程序直接访问服务器端数据库,它确实会导致奇怪的问题并打开安全问题。但是,您可以使用Web服务公开MySQL数据库。这个article有一个非常简单的方法。

答案 4 :(得分:0)

恕我直言,从Flex APP(Air或Flash)访问任何数据库的最佳方法是创建一个Web服务。在使用PHP进行了几次试用之后,我进入了使用C#构建的WSDL SOAP webservice,它很棒!从C#开始,我随时都可以使用PostgreSQL,MySQL,SQL-SERVER或Oracle。使用Flex Builder,您可以导入W​​SDL,以便为您创建在WSDL端创建的对象和webmethod,包括事件,监听器和对象。尝试。使用C#或Java或任何其他语言,WSDL SOAP是一个很好的选择。

答案 5 :(得分:0)

实际上,在AIR 2.0中,Adobe添加了NativeProcess功能。这允许用户通过命令行的stdin / stdout在应用程序之间交换数据。缺点是您必须将应用程序编译为EXE,DMG或RPM文件,因为此功能不是跨平台的。 MySQL通过命令行运行得很好,所以这对你来说是一个非常好的选择。以下是使用该功能的一些链接。

http://blog.omarfouad.com/?p=277 http://gotoandlearn.com/play.php?id=125 http://gotoandlearn.com/play.php?id=126 http://www.adobe.com/devnet/air/flex/articles/air_screenrecording.html