I have all the details to connect to a particular access point. I have to use that access point only, so all I require is the command to do it.
Advertisement
Answer
You can add a network entry into the wpa_supplicant.conf yourself (or within your script) Essentially connect manually once, then do:
adb pull /data/misc/wifi/wpa_supplicant.conf
and integrate the network entry into your script for automation. Example simple script:
#!/bin/bash # # Get this information by connecting manually once, and do # adb pull /data/misc/wifi/wpa_supplicant.conf ADB_PULL="adb pull /data/misc/wifi/wpa_supplicant.conf" WIRELESS_CTRL_INTERFACE=wlan0 WIRELESS_SSID=Gondolin WIRELESS_KEY_MGMT="WPA-EAP IEEE8021X" WIRELESS_EAP=PEAP WIRELESS_USER=Turgon WIRELESS_PASSWORD=IdrilCelebrindal adb start-server adb wait-for-device echo "adb connection....[CONNECTED]" adb root adb wait-for-device adb remount adb wait-for-device pushd /tmp rm wpa_supplicant.conf 2>/dev/null # Remove any old one adbpull_status=`$ADB_PULL 2>&1` echo -e "nAttempting: $ADB_PULL" if [ `echo $adbpull_status | grep -wc "does not exist"` -gt 0 ]; then echo " wpa_supplicant.conf does not exist yet on your device yet." echo "This means you have not used your wireless yet." echo "" echo "Taking our best shot at creating this file with default config.." echo "ctrl_interface=$WIRELESS_CTRL_INTERFACE" >> wpa_supplicant.conf echo "update_config=1" >> wpa_supplicant.conf echo "device_type=0-00000000-0" >> wpa_supplicant.conf else echo $adbpull_status echo " wpa_supplicant.conf exists!" fi echo "" echo "Add network entry for wpa_supplicant.conf.." echo "" >> wpa_supplicant.conf echo "network={" >> wpa_supplicant.conf echo " ssid="$WIRELESS_SSID"" >> wpa_supplicant.conf echo " key_mgmt=$WIRELESS_KEY_MGMT" >> wpa_supplicant.conf echo " eap=$WIRELESS_EAP" >> wpa_supplicant.conf echo " identity="$WIRELESS_USER"" >> wpa_supplicant.conf echo " password="$WIRELESS_PASSWORD"" >> wpa_supplicant.conf echo " priority=1" >> wpa_supplicant.conf echo "}" >> wpa_supplicant.conf echo "Pushing wpa_supplicant.conf.." adb push wpa_supplicant.conf /data/misc/wifi/wpa_supplicant.conf popd #/tmp adb shell chown system.wifi /data/misc/wifi/wpa_supplicant.conf adb shell chmod 660 /data/misc/wifi/wpa_supplicant.conf echo "" echo "Finished!" adb shell am start -a android.intent.action.MAIN -n com.android.settings/.Settings echo "Please toggle wifi off/on now.. (ifconfig not sufficient, monkey this)"