您如何在Android仿真器中连接localhost API?

问题描述 投票:0回答:1

首先,我想说我已经在这里检查了很多QA帖子,但没有一个解决了我的问题。

我已经检查了this,但它也对我不起作用。

我有使用Laravel构建的API,并且在我的计算机中设置了自定义域名。它实际上指向127.0.0.2(域为http://lara-news-api.test/),但是当我尝试在Flutter应用程序中将其用作API的端点时,我的应用程序未与该IP地址通信。

我的模拟器和我的电脑连接到同一网络(WiFi)

enter image description here

即使我输入了自定义域名或IP地址(127.0.0.2),它也不起作用,即使我将端口号设置为:80,因为我的XAMPP将此端口作为虚拟主机(VirtualHost 127.0.0.2:80)

enter image description here

到目前为止我做了什么?

  1. 将IP地址更改为10.0.2.2作为默认的AVD IP地址。 (无效)
  2. 更改仿真器手动代理配置(将IP地址设置为10.0.2.2和端口号),请使用API​​端点作为10.0.2.2和端口号。 (无效)
  3. 将localhost更改为API端点地址。 (无效)
  4. 将localhost更改为API端点地址,并添加端口号:80(无效)
  5. 将IP地址更改为自定义域名(http://lara-news-api.test/)作为端点。 (无效)
  6. 将地址更改为IP地址(127.0.0.2)(无效)
  7. 将地址更改为IP地址并添加端口号:80(无效)
  8. 获取无线局域网适配器的Wi-Fi IP地址(192.168.43.45),并将其作为仿真器手动代理配置。并尝试作为IP地址来连接API端点(192.168.43.45/api)。 (无效)
  9. 添加端口号以连接API端点(192.168.43.45:80/api)。 (无效)

enter image description here

我没有什么可以测试的,我已经检查了很多组合。但是结果是一样的,大多数情况下是产生套接字错误或404错误,但是当我尝试使用邮递员检查我的API时,它工作正常。

enter image description here

唯一的解决方案是将该laravel项目上载到实时服务器,但是我需要在本地对其进行测试。

请告诉我如何连接到我的API

enter image description here

android api android-emulator virtualhost avd
1个回答
0
投票

您看过android emulator networking page吗?

简而言之,要像使用环回地址一样访问计算机,您需要在仿真器内部使用10.0.2.2。

© www.soinside.com 2019 - 2024. All rights reserved.