【发布时间】:2011-05-24 20:30:15
【问题描述】:
所以我有一个 android 应用程序,用户将在其中输入文本以及不输入什么,我想从在线数据库中存储(并稍后检索)这些信息。目前我有一个在线设置的 LAMP 服务器,我可以使用它。
我该怎么做呢?我真的不知道如何将 java 与 PHP 和 MySQL 接口以使这些东西成为可能。我可以研究其他解决方案吗?
谢谢。
【问题讨论】:
标签: java php android mysql database
所以我有一个 android 应用程序,用户将在其中输入文本以及不输入什么,我想从在线数据库中存储(并稍后检索)这些信息。目前我有一个在线设置的 LAMP 服务器,我可以使用它。
我该怎么做呢?我真的不知道如何将 java 与 PHP 和 MySQL 接口以使这些东西成为可能。我可以研究其他解决方案吗?
谢谢。
【问题讨论】:
标签: java php android mysql database
您需要找到一个适用于 Android 的 MySQL 客户端库,或者在您的应用中从头开始实现一个,以便您可以连接到 MySQL 的 TCP 套接字并直接处理 DB。
但是,以这种方式将 MySQL 直接暴露于 'net 是非常危险的。我强烈建议你编写一个 PHP 中间件层来充当看门人,否则你的数据库很可能会被破解并被吸干。
【讨论】:
在您的 LAMP 服务器上,您应该为您的 android 应用程序编写一个 Web 服务 API 以与之通信。根据您发送/读取的数据,您将需要处理很多安全问题。我不会在这里详细介绍。
服务器端设置好后,您可以使用 DefaultHttpClient 类连接到您的站点。像这样的:
DefaultHttpClient httpClient = new DefaultHttpClient();
HttpGet httpGet = new HttpGet("http://url.to.my.app.com");
HttpResponse response = httpClient.execute(httpGet);
// handle response
运行(和编写)您自己的网络服务的另一种方法是连接到类似谷歌应用程序后端的东西。您还有一些工作要做,但很多安全问题更容易处理。
【讨论】: