2009-03-02 8 views
7

Zastanawiam się, czy w przypadku G1 możliwe jest wymuszenie przejścia ruchu sieciowego przez Wi-Fi lub sieć Cell GSM. Muszę wymusić aplikację, aby połączyć się z siecią wieżową, aby uzyskać informacje logowania. czy to możliwe? Ktoś ma jakieś pomysły na to, jak to będzie możliwe? Próbuję to zrobić wewnątrz aplikacji z Androidem SDK (Niestety nie miałem o tym więcej pewności)Czy można wymusić ruch w sieci przez Wi-Fi lub sieć TMobile?

Odpowiedz

3

Okazuje się, że możliwe jest za pomocą obiektu WifiManager wyłączenie, a następnie ponowne włączenie połączenia. Możesz zablokować go na czas trwania połączenia sieciowego, jeśli chcesz wymusić transmisję danych w sieci komórkowej. Wyobrażam sobie, że istnieje podobny menedżer sieci GSM, który wykona podobne zadanie dla połączenia komórkowego.

1

Zakładam, że można jednocześnie komunikować się za pośrednictwem dowolnego kanału, a więc na pewnym poziomie być oddzielnymi interfejsami sieciowymi dla każdego. Ponieważ Android opiera się na Linuksie, możesz spróbować użyć funkcji ifconfig lub biblioteki, aby określić, które interfejsy są dostępne i co robi. Jeśli możesz to zrobić, powinien istnieć sposób jawnego wysyłania/odbierania przez żądany kanał (tj. Przez komunikację przez ip dla tego interfejsu).

Przepraszam, że nie mogę być bardziej konkretny.

+0

Niestety, próbuję to zrobić za pomocą SDK, który, jak sądzę, nie pozwala mi manipulować surowymi interfejsami sieciowymi – haseman

0

To, czego szukasz w G1, to ustawić domyślną trasę. Możesz to zrobić za pomocą narzędzia linuksowego o trafnej nazwie route, domyślną trasą będzie ip 0.0.0.0, a następnie brama.

Nie jesteś pewien, czy możesz to zrobić z poziomu aplikacji, ale możesz to zrobić w całym systemie!

Powiązane problemy