6

这是我在 stackoverflow 上的第一篇文章,所以希望我听起来不会太无能。我在将我的 Android 应用程序连接到我创建的 PostgresDB 时遇到问题。我使用了本教程http://appliedcoffeetechnology.tumblr.com/post/10657124340中的代码。尽管我将 String url ... 行修改为以下内容: String url = "jdbc:postgresql://192.168.1.101:5556/postgres?user=postgres&password=yeahright"; 我按照其他说明下载 JDBC 并将其添加到包中,但我还添加了 internet 权限行。

我已经在我的 Windows 7 机器上配置了 postgreSQL DB 以允许连接,甚至将传入连接设置为“信任”,这样密码就不会妨碍。我还在 Windows 防火墙上打开了 5556 端口。我可以使用以下命令从我的 Ubuntu 笔记本电脑连接到它:psql 192.168.1.101 -U postgres -p 5556 -d postgres 但是,在运行 Android 应用程序(在真实设备上)时,我得到“java.sql.SQLException:没有合适的驱动程序”conn = DriverManager.getConnection(url)调用抛出。

非常感谢您的帮助,如果我能提供任何其他有用的信息,请告诉我。

下面的 Craig Ringer 提到了一个 Web 服务应用程序。最初我很犹豫,因为我不想让我的学习曲线变得更陡峭,但我决定使用 Django,它非常简单。

4

2 回答 2

3

AFAIK Android 本身不支持 JDBC。(更新:较新的版本可以)。老实说,您最好运行 Web 服务并让您的 Android 应用程序通过 Web 服务请求与数据库通信。

搜索“android postgresql”。

一些相关的讨论:

于 2012-10-03T04:36:53.827 回答
1

您收到的错误消息表明您没有将 postgres jdbc 驱动程序 jar 复制到您的应用程序中。

话虽如此,与远程数据库的直接 SQL 连接甚至可能通过 3g 网络可能无法提供您想要的性能。

如果您的应用程序中只需要一个数据库来存储一些东西,您应该查看嵌入式 SQLite 数据库。

于 2012-10-03T07:32:01.267 回答