Mijn vraag
Ik heb een los wifi-accesspoint met daarop een webserver draaien. Dit wifi accesspoint heeft geen verbinding met internet.
Via een app, die ik nu aan het ontwikkelen ben, maak ik verbinding met dit accesspoint. Dit lukt en gaat goed, maar als ik vervolgens een Websocket opent met het IP (welke vast is) wordt de verbinding altijd geprobeerd te maken via de dataverbinding (als deze aanwezig is).
Vervolgens krijg ik natuurlijk een timeout. Ik kan alleen verbinding maken als ik de mobiele dataverbinding uitschakel, dan werkt alles goed.
Mijn vraag is: Hoe kan ik de app forceren om via de wifi de websocket te verbinden, ook als er een dataverbinding is?
Relevante software en hardware die ik gebruik
Via de terminal en met root zou je de instelling CAPTIVE_PORTAL_DETECTION_ENABLED kunnen veranderen van Android, maar niet al mijn gebruikers hebben 1) een gerootte telefoon en 2) de kennis om deze instelling te veranderen.
Ik heb een los wifi-accesspoint met daarop een webserver draaien. Dit wifi accesspoint heeft geen verbinding met internet.
Via een app, die ik nu aan het ontwikkelen ben, maak ik verbinding met dit accesspoint. Dit lukt en gaat goed, maar als ik vervolgens een Websocket opent met het IP (welke vast is) wordt de verbinding altijd geprobeerd te maken via de dataverbinding (als deze aanwezig is).
Vervolgens krijg ik natuurlijk een timeout. Ik kan alleen verbinding maken als ik de mobiele dataverbinding uitschakel, dan werkt alles goed.
Mijn vraag is: Hoe kan ik de app forceren om via de wifi de websocket te verbinden, ook als er een dataverbinding is?
Relevante software en hardware die ik gebruik
- Ik maak gebruik van Ionic 2 met cordova plugins. Voor het verbinden van WiFi maak ik gebruik van de plugin WifiWizard.
- Ik test de app op een Vernee Apollo Lite met Android 6, maar ik wil natuurlijk dat de app op alle telefoons correct werkt.
- Oudere Android versies gebruikt, dit werkt goed omdat daarbij altijd de wifi-verbinding wordt gebruikt als de telefoon verbonden is met een wifi accesspoint
- Dataverbinding handmatig uitschakelen, dan werkt het wel maar is lastig omdat het niet gebruiksvriendelijk is.
- Gezocht naar Cordova plugins, maar tot nu toe zonder resultaat.
Via de terminal en met root zou je de instelling CAPTIVE_PORTAL_DETECTION_ENABLED kunnen veranderen van Android, maar niet al mijn gebruikers hebben 1) een gerootte telefoon en 2) de kennis om deze instelling te veranderen.
[ Voor 6% gewijzigd door henk1994 op 09-03-2017 14:32 ]