- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我用 ESP8266 创建了一个软 AP,我通过 android 6.0 marshmallow mobile 连接到它。连接后,如果我忽略它并打开浏览器窗口打开我的网络服务器页面或使用自定义构建的应用程序与 ESP 网络服务器通信,ESP8266 不会处理任何请求,我会在移动设备上收到一条通知,说明“Wifi 无法访问互联网”。但是,在我单击该通知中的保持连接选项"is"后,一切正常。我试图避免用户进行任何手动操作,从而尝试以编程方式修复它。是否可以在没有互联网访问权限的情况下将 ESP 用作路由器 AP,并使用 Android 应用程序连接到它而无需手动处理此通知。
更新:如果我通过自定义构建的应用程序以编程方式连接到此 AP,则不会出现此通知,并且与 ESP 的所有通信仍被 android 阻止。
ESP代码:
WiFiServer server(80);
WiFi.softAP("ssid", "password");
IPAddress myIP = WiFi.softAPIP();
Serial.print("AP IP address: ");
Serial.println(myIP);
server.begin();
delay(500);
Serial.println("Server started");
Serial.println(WiFi.localIP());
最佳答案
将 Captive Portal 与 mDNS 结合使用。
这是 example,这里是其中的一些亮点:
const char *softAP_ssid = "ESP_ap";
const char *softAP_password = "12345678";
/* hostname for mDNS. Should work at least on windows. Try http://esp8266.local */
const char *myHostname = "esp8266";
// Web server
ESP8266WebServer server(80);
// DNS server
const byte DNS_PORT = 53;
DNSServer dnsServer;
/* Soft AP network parameters */
IPAddress apIP(192, 168, 4, 1);
IPAddress netMsk(255, 255, 255, 0);
void setup() {
/* Setup the DNS server redirecting all the domains to the apIP */
dnsServer.setErrorReplyCode(DNSReplyCode::NoError);
dnsServer.start(DNS_PORT, "*", apIP);
/* Setup web pages: root, wifi config pages, SO captive portal detectors and not found. */
server.on("/", handleRoot);
server.on("/generate_204", handleRoot); //Android captive portal. .
server.on("/fwlink", handleRoot); //Microsoft captive portal.
server.onNotFound ( handleNotFound );
}
关于android - ESP8266 软 AP 与 android 棉花糖没有互联网访问问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40596906/
我试图在接到电话后显示 toast,我已经实现了注册广播接收器所需的所有必要内容,但它没有显示 toast。我正在尝试在 Marshmallow 设备上运行此程序 MyCallReceiver.jav
我一直在搜索如何使用 Marshmallow 验证字典的键是否具有值(必需)并且该值的类型是 bytes ,但我没有找到任何可行的方法。 Marshmallow 引用文档中没有与 bytes 数据类型
我有一个 android 应用程序,它在生产环境中运行了几年。最近,我发现应用程序中的 ListView 存在问题,滚动时会变得模糊。该问题仅在 Android Marshmallow 下出现。 He
我想在模拟器中测试我的应用程序的可访问性(特别是 Talkback),但模拟器中似乎缺少该选项。这是模拟器在辅助功能设置中的屏幕截图: 有两个选项 "ClockBack" 和 "QueryBack"
我已经定义了一个需要数据的 POST 调用: { "one" : "hello", "two" : "world", "three" : { "
我想在第二个屏幕(POS)中打开另一个应用程序,所以请帮助我在第二个屏幕上运行另一个应用程序。我获得了 Oreo 的代码,但我需要它才能从 Lollipop 运行到最新版本。 ActivityOpti
我正在使用广播接收器来检测耳机按钮的点击。下面是广播接收器的代码。 public class HeadSetButtonStateReceiver extends BroadcastReceiver
场景如下,我有一个 LoginActivity,它使用 WifiManager 来获取 IP 地址,如下所示: WifiManager wifiManager = (WifiManager)getSy
我对棉花糖很陌生,但我的问题是关于处理类似字典的对象的问题。 Marshmallow 文档中没有可行的示例。我在堆栈溢出中遇到了一个简单的例子 Original question这是答案的原始代码假设
这个问题在这里已经有了答案: Return JSON response from Flask view (14 个回答) 去年关闭。 我在 Flask 上写申请.对于 RestAPI我在用 flask
Appium 支持 Marshmallow 吗?我正在尝试选择 Marshmallow 的平台名称,但它似乎不包含它,而且我安装了最新版本的 Appium...。 最佳答案 我没有将 6.0 Mars
我的带棉花糖的 Galaxy S6 Edge 手机遇到了一个非常有趣的问题。当我进入开发者选项时。我收到的不是一长串选项列表,而是“此用户无法使用开发人员选项”的消息。据我所知,我没有任何其他用户(老
我想声明一个模式字段来接受不同的模式类型,但不是任何 . Marshmallow 是否可能出现以下情况? class SchemaA(Schema): name = String() clas
又是我,现在有一个棉花糖问题,我有以下结构: 路线.py @models.response(ParentSchema()) def get(args, model_id): return {"
This question already has answers here: How do I create a transparent Activity on Android?
我正在为 Android Marshmallow(API 级别 23)开发一个应用程序。 我有一个包含 ListView 的 Activity 。 我使用 BaseView 适配器填充该 ListVi
我有一个通过 SSLSocket 与服务器通信的应用程序。从 Android 6 我收到一个 SSLHandshakeException javax.net.ssl.SSLHandshakeExcep
我有一个使用外部存储来存储照片的应用程序。根据需要,在其 list 中请求以下权限 它使用以下内容来检索所需的目录 File sdDir = Environment .ge
在 Android 6 中,低功耗蓝牙连接参数管理似乎发生了变化。 我有一个 BLE 外围设备需要使用一些特定的连接参数(特别是连接间隔),并且我想使用 BLE 规范允许的最小连接间隔(即 7.5ms
我有一个对象层次结构和一个对应于它们的模式层次结构。此层次结构的中间级别的架构不包括特定的继承字段。我希望从它继承的模式会“继承”这个排除,但如果他们在他们的 Meta 类中添加自己的排除字段,情况似
我是一名优秀的程序员,十分优秀!