2013-10-03 4 views
0

Используя приведенный ниже код, который должен найти маску подсети:Как найти маску подсети (ошибки) в андроиде

String subnetMask="/"+networkInterface.getInterfaceAddresses().get(0).getNetworkPrefixLength(); 

Где мой IP адрес (как полученные из других источников) является 192.168.0.130

Но приведенный выше код обнаруживает, что маска подсети должна быть 255.255.255.255, но я ожидаю, что она будет 255.255.255.0.

Что я делаю неправильно?

+2

Что такое networkInterface? –

ответ

0

Я не это в java, но 255.255.255.255 отнюдь не плохая маска подсети; вполне возможно, что вы используете интерфейс, который привязывается к одной подсети хоста, что, по моему мнению, является нормой, когда у вас есть dial ups и ADSL.

Узнайте, что это за интерфейс и как он настроен. Это может дать вам некоторые подсказки (при условии правильности кода).

+0

Я думаю, что это не так, потому что, когда я тестирую свое приложение на двух разных устройствах (галактика samsung s3 mini и acer liquid), acer дает мне правильную маску подсети, а samsung - неправильную – user2843420

Смежные вопросы