java.io.FileNotFoundException 尝试访问 android 物理设备中的本地主机文件时

java.io.FileNotFoundException when trying accessing localhost file in android physical device

我是 android 和 java 的新手。我正在尝试开发一个测试应用程序,它将数据存储在本地数据库中。我正在使用 WAMPP。在模拟器中,我可以完美地访问它,但是当我尝试在我的物理设备(Micromax A311)中访问它时,我得到 java.io.FileNotFoundException。我已经看到很多关于这个问题的问题,但是 none 对我有用。

在我的 AndroidManifesti 中添加了以下代码

<uses-permission android:name="android.permission.INTERNET"/>

Url

String url="http://192.168.0.104/selectQuery.php";

这是我的 IP4(无线局域网适配器 Wi-Fi)地址。

我试过

http://10.0.2.2/....
/10.0.2.2:80/....
/192.168.0.104:80/

我可以使用

在浏览器中访问保存在我的数据库中的数据
/192.168.0.104/ and /192.168.0.104:80/

我通过 USB 将物理设备连接到笔记本电脑。在网络共享设置中,我打开了 USB 网络共享。

我连接的是与笔记本电脑相同的 WiFi。

我的笔记本电脑代理设置也关闭了。

任何人都可以帮助我摆脱这个问题..过去几天我对此感到震惊..

谢谢

如果 selectQuery.php 文件在文件夹中,您的 url 就像:

String url ="http://192.168.0.104/name_folder/selectQuery.php";

所以如果有 ./myFolder/selectQuery.php 则 url 是:

String url = "http://192.168.0.104/myFolder/selectQuery.php";

感谢您的回复...我自己找到了解决方案。我下载了 https://ngrok.com/download,然后使用它的 CMD 并复制粘贴

 ngrok http -bind-tls=false site.dev:80

我在 https://ngrok.com/docs#bind-tls 仅隧道化 HTTP 或 HTTPS 下找到了它。然后我在 url 字符串中使用 转发地址

效果很好..我现在很开心..