Я проверил в вопросе API для настройки статических IP-адресов в приложении для Android.
Он работает до Android 2.3. Однако на более высоком уровне API нет удачи. Например, Я установил настройку
android.provider.Settings.System.putString(getContentResolver(), android.provider.Settings.System.WIFI_USE_STATIC_IP, "1");
android.provider.Settings.System.putString(getContentResolver(), android.provider.Settings.System.WIFI_STATIC_IP, "192.168.0.100");
android.provider.Settings.System.putString(getContentResolver(), android.provider.Settings.System.WIFI_STATIC_NETMASK, "255.255.255.0");
android.provider.Settings.System.putString(getContentResolver(), android.provider.Settings.System.WIFI_STATIC_DNS1, "192.168.0.254");
android.provider.Settings.System.putString(getContentResolver(), android.provider.Settings.System.WIFI_STATIC_GATEWAY, "192.168.0.254");
Но я возвращаюсь, чтобы проверить:
Setting --> Wi-Fi --> Long Press Access Point SSID --> Modify Network --> check Show advanced options
Поле IP Settings
все еще указано DHCP
, но не Static
.
Верно, что я могу использовать android.provider.Settings.System.getString()
, чтобы вернуть то, что я установил. Это доказывает, что настройка сохраняется где-то, но система просто игнорирует ее.
Система использует настройку, отличную от android.provider.Settings.System
на Android 3.x и 4.x, поскольку этот параметр установлен для SSID точки доступа. Могу ли я изменить настройку на одном SSID так же, как это работает на Android 2.3?