我正在为我的第三年项目撰写申请表。该应用程序将需要与外部mySQL数据库进行交互。应用程序将从数据库中检索数据并在ListView中将其显示给用户。
我很清楚应用程序将具有哪种功能。我也花了很多时间使用ListViews和本地SQLite数据库。我还对HttpUrlConnection类进行了一些研究。
我只是想知道是否有人能够就如何访问此外部数据库向我提供更多指导?
是否需要编写Web服务来处理交易?如果是这样的话会涉及到什么,因为我还没有在我的课程中遇到过Web服务。
非常感谢任何建议。我的应用程序也适用于ICS v4.0.4。
谢谢大家!
答案 0 :(得分:12)
是的,您必须创建Web服务才能与外部数据库(在您的情况下为MySql)进行交互。在PHP中创建Web服务非常容易,因为它具有一个将DB数据转换为JSON的功能,您可以轻松地解析JSON数据并在Listview中显示或相应地显示您的需求。
以下是一些有用的链接,可帮助您获取更多详细信息: -
http://www.androidhive.info/2012/05/how-to-connect-android-with-php-mysql/ - 最好的
http://www.coderzheaven.com/2011/04/08/android-phpmysql-connection/
http://blog.sptechnolab.com/2011/02/10/android/android-connecting-to-mysql-using-php/
希望它有所帮助。
答案 1 :(得分:2)
我建议您的Android应用程序与一个宁静的服务(与您的数据库通信的中间服务)进行对话,该服务将返回您需要的数据库对象。所以它不是与数据库的直接连接,而是它在这种类型的连接上的一个很好的例子。
答案 2 :(得分:1)
Will it involve me having to write a web service to handle the transactions?
是的,如果数据库不在设备上,您将不得不通过网络请求访问它,这必须由某些东西处理。
what would that involve?
这取决于很多事情。只要托管它的服务器支持,您就可以用几乎任何语言编写Web服务。您可以使用Python,Ruby,PHP,Perl,Java或.NET(如果您有框架),仅举几例。处理实际的数据库请求必须在服务器上完成,这会将数据返回给你的应用程序 - 可能是JSON。
答案 3 :(得分:1)
答案 4 :(得分:0)
您需要拥有一个虚拟主机才能在线存储脚本。您可以在此处编写此脚本。 php在数据库中插入用户数据。 在你的应用程序中使用Volley来处理脚本。获得用户数据后,调用脚本并听取结果: