【问题标题】:Testing my android application on real device在真实设备上测试我的 android 应用程序
【发布时间】:2016-04-22 07:21:44
【问题描述】:

我创建了一个简单的 android 应用程序(使用 php 中的 MySQL 数据库连接逻辑)来注册一个新联系人。当我将应用程序运行到模拟器时(使用 localhost IP 地址作为 10.0.2.2),它工作正常。现在我想在我的设备上测试它,我面临着 localhost 的连接问题 我应该怎么办??

这是我的代码:

@Override
protected String doInBackground(String... params) {
    String reg_url="http://10.0.2.2/mobile/register.php";
    String login_url="http://10.0.2.2/mobile/login.php";
}

提前致谢

【问题讨论】:

  • 只有当你的安卓设备和WIFI连接在同一个网络时才会这样。
  • 你应该使用你的服务器ip,尝试在命令行中使用ipconfig获取你的ip

标签: php android mysql android-studio


【解决方案1】:

首先,确保您的服务器和您的设备可以相互建立连接(它们在同一个网络中,或者服务器可以公开访问)。

然后,检查您的服务器的 IP 地址并获取您的服务器正在运行的端口。当您从真实设备建立连接时使用它们。 URL 应如下所示:http://<server IP address>:<server port>/mobile/register.php

【讨论】:

  • 谢谢,但我怎么知道我的服务器和我的设备是否可以相互建立连接
  • 它们必须在同一个网络上,否则您的服务器必须是公开可见的。例如,如果您的服务器在本地机器上运行,连接到本地网络,并且设备也连接到同一网络,那么它们可以建立连接。
  • 它们应该在同一个网络中。您可以尝试 ping 您的移动 IP 地址。
【解决方案2】:

您应该查看 adb 反向端口转发。因此,假设您希望您的手机的 localhost:8888 指向您本地机器的 localhost:8888,您可以使用以下 adb 命令来实现它:

adb 反向 tcp:8888 tcp:8888

第一个参数是指设备上的端口,第二个参数是指计算机上的端口。

adb reverse 允许您将端口从您的设备转发到您的主机。 如果您有任何疑问,请告诉我。

更多信息请参考以下链接:

http://www.codeka.com.au/blog/2014/11/connecting-from-your-android-device-to-your-host-computer-via-adb

【讨论】:

  • 非常感谢,我会试试这个并告诉你情况
【解决方案3】:

我认为连接已建立,当我从手机写入地址 IP 时,我得到 wamp Localhost[1]

但是当我运行应用程序并输入用户名和密码时,我得到了这个 (我认为是login.php文件的描述)[2]

http://i.stack.imgur.com/jSXXP.jpg // [1]

http://i.stack.imgur.com/cP8PB.jpg //[2]

我用这一行来调用脚本 php : String login_url="http://192.168.1.103:80/mobile/login.php";

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-09-15
    • 1970-01-01
    • 2019-06-23
    • 2012-10-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多