是否有可能直接访问MySql数据库通过Adobe空气/Flex 应用程序?
如果不是,什么是下一个最好的选择吗?

有帮助吗?

解决方案

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

其他提示

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

祝你好运!

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

我不建议直接访问数据库。我描述了我是怎么做的此处

恕我直言,最佳的方式接入的任何数据库从Flex的应用程序(空气或闪光灯)是创建一个网络服务.之后的几个选拔赛PHP,我进入WSDL肥皂服务建立在C#及其美丽!从C#我得到了PostgreSQL,MySQL SQL服务器或Oracle任何时候。和使用Flex建设者,可以进口WSDL因此对象和webmethod上创建WSDL方将能为你所创造的,与事件,listenerers和对象。尝试。C#或Java或任何其他语言,WSDL肥皂是一个伟大的选择。

实际上,在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

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top