从Android设备访问本地主机api

时间:2016-08-08 12:56:32

标签: android api android-studio

我在C#,Visual studio中创建了一个API,它在我的localhost上运行,地址为http://localhost:xxxxx/api/allproduct

我还在Android Studio中创建了一个Android应用,并尝试访问上述API。我正在使用数据线调试我的应用程序(不是通过模拟器)。我无法访问API。

我使用了chrome://inspect/#devices,在端口转发的帮助下,我可以在移动设备的浏览器中访问api。但是,当我尝试通过代码(Android工作室中的应用程序代码)连接此API时,它告诉“无法连接到http://localhost:xxxxx/api/allproduct”。

任何一个请建议任何替代。

4 个答案:

答案 0 :(得分:3)

谢谢大家的建议。 我用过你的想法并添加了更多。我使用IP运行我的api并使用chrome:// inspect /#devices进行端口转发,之后我在我的移动浏览器中打开了这个api(连接了USB线)。之后我开始调试使用api的android应用程序。它运行成功。

点我注意到当api没有在我的手机浏览器中运行时,我的android应用程序崩溃了,当api运行时,应用程序没有崩溃。

我通过localhost:xxxx / api / product

在我的手机浏览器中访问api

答案 1 :(得分:1)

请记住,localhost是*"这台机器。"

换句话说,"对于您的Android,它就是您的Android!"

您的手机正在与本身通话,而不是与运行API的计算机通话。您必须提供(或,使手机能够找到...) 机器的IP地址。

答案 2 :(得分:1)

您必须创建一个网络,您的设备和服务器位于同一网络中。就像你可以通过wifi或热点连接笔记本电脑和手机。

然后使用网络的IP地址(移动热点或wifi IP地址)。

将localhost替换为ip地址并访问API。

答案 3 :(得分:0)

将ip addess替换为localhost。确保计算机和移动设备连接到同一网络,并且您使用计算机的IP地址(API托管计算机)。 例如:http://192.168.1.1:xxxx/api/allproduct