Comment puis-je définir l'adresse IP wifi, l'adresse DNS, la passerelle de android java i.e par programmation, je n'ai trouvé aucune méthode qui a la capacité de stocker les valeurs.Régler Android IP, DNS, paramètre GATEWAY par programme
Répondre
Vous pouvez modifier les paramètres du système programatically.
Tout d'abord vous devez demander la permission 'WRITE_SETTINGS' dans votre 'AndroidManifest.xml':
<uses-permission android:name="android.permission.WRITE_SETTINGS"/>
Ensuite, vous devez réellement changer le réglage en utilisant le code suivant:
android.provider.Settings.System.putString(getContentResolver(), android.provider.Settings.System.WIFI_USE_STATIC_IP, "0");
android.provider.Settings.System.putString(getContentResolver(), android.provider.Settings.System.WIFI_STATIC_DNS1, "192.168.0.2");
android.provider.Settings.System.putString(getContentResolver(), android.provider.Settings.System.WIFI_STATIC_DNS2, "192.168.0.3");
android.provider.Settings.System.putString(getContentResolver(), android.provider.Settings.System.WIFI_STATIC_GATEWAY, "192.168.0.1");
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_IP, "1");
Le les paramètres actuels sont accessibles via la même méthode mais utilisez 'getString' au lieu de 'putString'.
Pour plus d'informations sur l'option Paramètres visiter la référence ici: Settings.System | Android Developers
Vous ne pouvez pas faire cela à partir d'une application.
Souhaitez-vous que les applications de votre téléphone changent les paramètres du téléphone à volonté?
oui je veux ma demande pour modifier les paramètres IP wifi .. ce ne est pas possible ? – faheem
Je pense que le point que Peter essaie de faire est que vous ne devriez pas vouloir des applications arbitraires pour changer ces paramètres. –
ok, je veux créer une application qui change ces paramètres n/w (ip, dns, passerelle) .. créer différents profils de configuration wifi. et sur une seule touche il change la configration..60% de mon application est terminée, je veux juste une méthode ou quelque chose pour changer ces paramètres – faheem
Vous ne savez pas si cela vous aidera mais il est possible de définir manuellement une autre adresse IP, une passerelle, un DNS, etc. pour un point d'accès particulier dans les paramètres sans fil. Si vous pouvez le faire automatiquement ou en utilisant une intention est une autre question?
Je viens de voir ce qui pourrait être utile
How can i call Wi-Fi settings screen from my application using Android
Merci, en utilisant l'intention est-il possible de modifier les paramètres wifi? – faheem
le code de suivi peut aussi le faire:
WifiManager mWifiManager = (WifiManager)mContext.getSystemService(Context.WIFI_SERVICE);
DhcpInfo dhcpInfo = mWifiManager.getDhcpInfo();
int dns1 = dhcpInfo.dns1;
int dns2 = dhcpInfo.dns2;
Comment cela définit-il la valeur DNS? –
merci ... cela a résolu mon problème de réglage proxy ... – user4232
@Flexiweb, Bro. Ce ne fonctionne pas pour Android OS Ver 3 et plus. Pouvez-vous s'il vous plaît aider pour cela aussi. – Harpreet
Cela peut fonctionner pour 'putString' mais j'essaie 5.1.1 de 'getString' et il retourne null pour chacun d'entre eux. –