Estou trabalhando em cafés e hotéis, o que significa que não tenho absolutamente nenhum acesso à Internet sem um portal cativo em frente a ela.
Estou escrevendo aplicativo para dispositivos móveis. Eu preciso que meu computador e o telefone estejam na mesma rede para depuração e porque o computador está servindo arquivos HTML para o site móvel em que estou trabalhando. Eu também preciso que o computador e o telefone consigam acessar a Internet ao mesmo tempo. Por exemplo, o Chrome tem depuração remota, mas requer que o telefone tenha acesso à Internet para baixar arquivos de depuração específicos da versão.
Em uma rede doméstica típica, isso não seria problema, mas por trás de um portal cativo não estou tendo sorte. O maior problema é que o portal cativo apresenta uma interface web que requer login e, mesmo que dois dispositivos façam login, eles não podem ver um ao outro. Eu tentei isso em 6 cafés e 3 hotéis sem sorte.
Então, soluções?
Eu tenho um roteador portátil. Eu estava esperando que eu pudesse conseguir isso para se conectar ao portal cativo e então ter meu PC e Phone conectados a ele. Infelizmente, como não tem como responder à interface de login baseada em html, não consigo fazer isso.
Eu pensei que talvez eu pudesse usar o roteador como um adaptador WiFi USB idiota. Não parece ter essa capacidade embora. Nesse caso, eu poderia usar o PC para compartilhar o acesso à internet em um adaptador WiFi do outro. Talvez se eu sair e por um adaptador USB WiFi real?
Eu tentei que o PC acessasse o portal cativo e compartilhasse a internet através do roteador conectado pelo cabo ethernet ao PC. Coloquei o roteador no modo roteador (vs ap / bridge / client / repetidora / ...) conectei o telefone sem fio ao roteador. Isso deu ao PC e à internet do telefone, mas o PC e o telefone ainda não podiam se ver, já que estavam efetivamente em redes diferentes. Talvez eu possa configurar uma rota? Não sei como eu faria isso no telefone.
Existe outra solução?
Aqui está outra maneira de explicar esse problema. Embora eu não esteja usando o Phonegap, mas como é comum ... Imagine que você esteja fazendo um aplicativo Phonegap. O aplicativo obtém dados de um servidor. Você está testando / depurando, então você está executando esse servidor localmente no seu PC. Você inicia a sua compilação de depuração do seu aplicativo de lacunas telefônicas. Faz solicitações de GET
para http://<ipaddresofpc>/endpoint
Em um roteador doméstico normal, seu telefone e seu PC podem fazer o ping para outro. Em 99% de todas as redes gerenciadas do portal capturado (pense em hotéis, Starbucks, cafés, aeroportos), o telefone e o PC não podem pingar uns aos outros. A comunicação entre dispositivos por Wi-Fi está bloqueada por algum motivo.
A questão é como contornar isso, dado que você só tem acesso a um portal cativo (ou seja, você está no Starbucks conectado ao WiFi deles). Você precisa que tanto o seu telefone quanto o seu PC tenham acesso à Internet e você precisa que eles também possam fazer o ping para os outros.
Atualização: Na verdade, eu estava errado. O telefone e o PC podem se ver com a última configuração. O telefone vê o PC tem seu gateway e é capaz de ver o servidor web em execução no PC.