【问题标题】:Adobe AIR with PHP/MySql or SQLite带有 PHP/MySql 或 SQLite 的 Adobe AIR
【发布时间】:2010-11-16 09:45:34
【问题描述】:
使数据库驱动的更好选择是什么
Adobe AIR(桌面)应用程序?
- 在 AIR 中使用 PHP+MySql
或
- 使用 SQLite
如果我选择 SQLite,那么我不能将我的代码重用于
在线申请。
如果我选择 1,我必须阻止用户机器上的几个端口号。
另外,我使用 XAMPP 为用户提供 PHP 和 MySql,所以
只要 XAMPP 正在运行,它就会打开一个命令窗口。而且,用户
对那个窗口的用途感到困惑?它使最终用户
体验有点混乱。
【问题讨论】:
标签:
php
mysql
sqlite
air
xampp
【解决方案1】:
如果 XAMPP 对您的客户端来说过于混乱,请将 Apache 和 MySQL 安装为独立的。它本质上是一样的,你可以更好地控制 Apache/MySQL 中运行的内容。另外,您不会看到烦人的命令窗口(不过,老实说,我不记得在运行 XAMMP 时无法最小化到托盘的窗口)。
【解决方案2】:
无论您做什么,都不要在程序运行时打开命令窗口。如果您这样做,您的客户就会像没有明天一样卸载。
就 mysql 与 sqlite 而言,标准方法是 - 如果远程通信,请随意使用 mysql,但如果您在客户端安装 db,则应使用嵌入式独立 db (sqlite)。
您希望您的应用程序有多复杂以至于您无法使用 sqlite(除了无法重用您提到的某些代码)?
【解决方案3】:
我肯定会使用 SQLite,因为它包含在 Air 中。
我可以建议吗?分两部分编写代码。使用 JSON 提要填充自身的 UI,以及提供 JSON 数据的 API。在将应用程序移植到 Web 时,您可以使用相同的 UI,但使用重写的 API。
【解决方案4】:
我的建议是使用 Sqllite 作为你的本地数据库,并编写一个同步 API,将本地 sqllite 数据库与服务器端数据库-MySql 同步。因此,根据您的客户,您可以使用该系统。如果客户端是独立的,那么 Sqllite 将服务,否则 MySql 将服务。您唯一需要决定的就是如何使用同步 api。
Just check the Sample Application