1

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

错误:未知状态!

我确信我收到了这个错误,因为我没有使用正确的 url 进行连接

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

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

我也尝试过使用我的 IP 地址,但每当我在浏览器上浏览它时,得到 Object Not Found

在 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");
4

5 回答 5

0

127.0.0.1 表示本地主机

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

喜欢:

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

String url = "http://192.168.0.1/test.php"
于 2013-04-09T09:47:51.080 回答
0

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

    http://127.0.0.1/

连接到模拟器本身。除非您运行 android web 服务器,否则您将收到连接被拒绝错误。

您可以使用 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 :)

于 2013-04-09T09:54:27.567 回答
0

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

Xampp

于 2020-05-30T14:36:07.723 回答
0

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

使用此“10.0.2.2”IP 地址,它等于您的托管设备中的 localhost

于 2020-02-26T12:28:42.363 回答
-1

添加到build.gradle

Android{
    useLibrary 'org.apache.http.legacy'
}
于 2017-01-31T06:27:52.353 回答