【问题标题】:How to make my android app to be able using 3G (Firemonkey/RAD Studio XE6)如何使我的 android 应用程序能够使用 3G (Firemonkey/RAD Studio XE6)
【发布时间】:2014-07-31 02:21:05
【问题描述】:

我正在 Rad Studio XE6 (Delphi) 中开发一个应用程序,它可以访问服务器中的 Oracle DB。到目前为止,我已经使用我的个人笔记本电脑作为托管数据库的服务器对其进行了测试。客户端是在 Delphi 中创建的,我将它安装在我的 android 手机上。两者都在同一个 wifi 网络中(笔记本电脑和安卓设备)。

到这里为止,一切正常。

但是,我尝试连接到我的笔记本电脑并使用 3G 连接获取数据库...这不起作用。

看起来我的 android 设备永远无法访问服务器(我的笔记本电脑)。

有人知道我需要做什么才能让我的应用通过 3G 工作以访问数据库服务器吗?

【问题讨论】:

  • 您可以通过手机浏览器使用 3G 访问网络服务吗?由于通过 wifi 电话和服务器直接连接,通过 3G 它们位于单独的网络中。所以我想你需要静态 IP(由 ISP 提供)来访问笔记本电脑数据库,然后用它来访问数据库服务器
  • 哇,这是一个很棒的建议 :) 我没想过,让我试试,这会给我很多关于这个问题的信息。非常感谢朋友!!! :)
  • 也试试这个3g wifi android

标签: android delphi firemonkey 3g


【解决方案1】:

这是网络错误,而不是编程错误。您有防火墙,可能在 ISP 级别,阻止您访问数据库。你也可能在那里至少有一层 NAT。

顺便说一句,您永远不应该直接连接到数据库,原因有两个。首先,它要求您的数据库服务器可以公开访问,因此对黑客更加开放。其次,它要求您在应用程序中输入密码,这意味着任何人都可以反编译应用程序并获取密码。相反,您应该在它们之间放置一个 Web 服务,因此只有 Web 服务器需要连接到数据库。

【讨论】:

  • 首先,非常感谢您的回答:) 我忘了说是的,我正在使用网络服务来提供数据。因此,Web 服务已连接到数据库,我需要从 android 客户端连接到 Web 服务。所以也许这是一个防火墙问题,对吧?再次感谢。
猜你喜欢
  • 1970-01-01
  • 2014-07-15
  • 2014-12-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-02-19
  • 1970-01-01
相关资源
最近更新 更多