URL 使用 Android 模拟器连接到 XAMPP 服务器

Posted

技术标签:

【中文标题】URL 使用 Android 模拟器连接到 XAMPP 服务器【英文标题】:URL Connect to XAMPP Server using Android Emulator 【发布时间】:2013-03-31 15:55:15 【问题描述】:

我正在编写一个程序,其中我试图通过 android Emulator 将数据存储到 XAMPP 服务器,但是在将数据插入 XAMPP 时出现错误。

错误:未知状态!

我确定我收到此错误是因为我没有使用正确的 url 进行连接

请查看我的以下网址以通过 Android 模拟器连接到 XAMPP 服务器:

   String url = "http://ipaddress/test.php"

我也尝试过使用我的 IP 地址,但每当我在浏览器上浏览它时,就会出现 找不到对象

在 RomPager 服务器上找不到请求的 URL '/test.php'

  String url = "http://127.0.0.1/test.php"

  String url = "http://10.0.2.2/test.php"

注意: 我之前测试过我的 php 代码,它工作正常,所以我的 URL 有问题

我在 PHP 脚本中使用以下行:

$objConnect = mysql_connect("localhost","root","") or die("Cannnot Connect to Database");
    $objDB = mysql_select_db("registration");

【问题讨论】:

127.0.0.1 是您的模拟器,而不是您的计算机。 使用 10.0.2.2 作为 IP 地址。这是您开发机器的环回适配器 127.0.0.1 的模拟器内的 IP 别名。 从 PC 浏览器尝试10.0.2.2/test.php,如果这真的有效。它必须在 PC 和模拟器上工作。否则,您必须修改服务器配置。 @Pihhan 是的,我同意你的看法,伙计,我已经使用浏览器进行了测试,但通过模拟器它不起作用,如何修改服务器配置,是否在 config.inc 中需要指导 【参考方案1】:

127.0.0.1 表示本地主机

使用您的 PC(个人计算机)的 IP 地址。

喜欢:

如果我的电脑的 ip 是:192.168.0.1 那么 URL 是

String url = "http://192.168.0.1/test.php"

【讨论】:

是的,我已经尝试使用我的电脑的 ip 地址,但是找不到对象,我已经更新了页面的完整详细信息,请查看上方 你在浏览器中打开你的网址了吗? 10.0.2.2/test.php 在浏览器中打开这个.. 告诉我发生了什么.. 能够将数据存储到xampp服务器@DhavalSodhaParmar 查看本教程:dj-android.blogspot.in/2011/09/…【参考方案2】:

您无法链接到 localhost (127.0.0.1),因为模拟器有自己的网络地址和自己的独立 localhost。所以

    http://127.0.0.1/

连接到模拟器本身。除非你有 android web server 运行,否则你会得到 connection denied 错误。

您可以使用 Android SDK 中的 ADB 将端口从本地 PC 转发到 android 设备。但我认为你不能将端口从 android 设备转发到 PC。 看adb forward help,不过我相信是另外一个方向。

让它工作的最简单方法是使用您的计算机名称而不是 localhost。您必须使用可从网络访问的真实 IP,您可以使用 ipconfig 找到。根据您的网络配置,您可能能够将完整的主机名与域一起使用。 IE。 mycomputer.example.org。只需从 ipconfig 附加 DNS 后缀并尝试。

您可能需要重新配置您的 apache 以侦听外部地址并使用防火墙阻止来自外部的访问。如果你在 apache 服务器上使用 127.0.0.1 的虚拟主机,你也已经将它移动到另一个地址的虚拟主机。

而且似乎 %SYSTEM%/drivers/etc/hosts 文件不起作用,它必须是名称 nslookup 才能解决。如果不经常更改,则使用本地 IP 更容易。在其他情况下,使用 dyndns :)

【讨论】:

【参考方案3】:

添加到build.gradle:

Android
    useLibrary 'org.apache.http.legacy'

【讨论】:

【参考方案4】:

查看这个 https://developer.android.com/studio/run/emulator-networking.html

使用这个“10.0.2.2”IP地址,它等于你的主机设备中的localhost

【讨论】:

【参考方案5】:

Xampp 正在使用端口:80,如下图所示。所以在IP地址下面写http://10.0.2.2:80/对我有用。希望这可以帮助某人。

【讨论】:

以上是关于URL 使用 Android 模拟器连接到 XAMPP 服务器的主要内容,如果未能解决你的问题,请参考以下文章

“无法连接到远程 VM”将 jdb 连接到 Windows 上的 android 模拟器

PayPal IPN 模拟器:尝试连接到 URL 时出现问题。请检查网址并重试

可以使用颤振在 VS Code 和 Android Studio 中启动但无法连接到模拟器

Android 模拟器无法连接到本地服务器(未指定输入文件)

如何使用 React Native 连接到 Android TV 模拟器(在 Mac OS 上)?

将 USB 设备连接到 Android 模拟器?