java - 如何使用android以稳定的方式连接到没有互联网的ESP8266接入点?

我有一个 Wifi 微 Controller ESP8266,它也有一个接入点。我引用了其他关于以编程方式连接到接入点的博客,并尝试了两种方式

  1. 使用公开的标准 APIS

    wifiManager.enableNetwork(netId, true); wifiManager.saveConfiguration(); wifiManager.reconnect();

  2. 使用带有@hide 的API

    wifiManager.connect(netId, ActionListener)

我面临的问题是,在我连接到接入点后一段时间,它与 esp8266 接入点断开连接,并通过上述两种方法连接回我的路由器。

如果我通过顶部栏或设置应用程序连接,它会以稳定的方式连接并且永远不会断开连接,我什至会收到通知

Wi-Fi has no internet access

当我以编程方式连接时,我没有收到无法访问互联网的通知。设置应用程序如何能够以稳定的方式连接到接入点,而我的应用程序却无法连接。

我正在运行 Androidn 6.0.1 API 23

最佳答案

如果您特别要求在断开连接之前使用该网络一次,它将无限期地保持连接:

  • ConnectivityManager.bindProcessToNetwork(网络)
  • Network.bindSocket(Socket)
  • Network.openConnection(URL)

另请参阅我关于如何同步网络连接和访问时间的回答:https://stackoverflow.com/a/52304308/4969370

https://stackoverflow.com/questions/38934906/

相关文章:

qt - 如何获取系统的默认浏览器?

javascript - 让 Gojs FlowCart 在 AngularJS 上工作

java - artemis rest 集成 - 无法使用队列中的消息

android - 如何在 Retrofit2 converter-simplexml 中调试 "j

linux - 有没有办法从 git lfs 指针下载实际文件?

apache-kafka - 能否使用kafka获取GoogleAnalytics数据并通过spar

angular2-routing - 如何最好地将租户包含在 Angular 2 路由中

java - 未找到包含 : org. eclipse.update.feature、org.ecl

javascript - 如何使用 aurelia 路由器生成正确的详细信息 url?

sql - 数据库设计 - 重写值