I have an access point hosting a login page (which doesn't have actual internet access) and I'm using dnsmasq to answer all DNS requests with the IP address of this page. If an android device connects, I want it to know that it's connected to a captive portal and show the "Sign-in to wifi network" prompt but this doesn't happen (the device just silently connects to the AP), although wireshark shows that the http GET requests for "/generate_204" are properly responded with "HTTP/1.1 200 OK". Any suggestions why this could be happening? Could there be something other than the response for "/generate_204" that android checks? I'm guessing that the detection fails if the device finds out that there's no internet access.
Thanks