Ejemplo n.º 1
0
def connect_to_wifi_with_app(uiauto_device: Android_Device, wifi_name,
                             wifi_password):
    is_existed = Utils.is_onslaught_app_installed(uiauto_device.device_serial)
    current_ssid = Utils.get_wifi_ssid(uiauto_device.device_serial)
    print("the wifi which " + uiauto_device.device_serial +
          " had been connected to wifi " + current_ssid)
    if current_ssid.__eq__(wifi_name):
        return
    save_setting_id = "com.android.settings:id/save"
    if is_existed:
        uiautomator = uiautomator2.connect_usb(
            serial=uiauto_device.device_serial)
        uiautomator.app_start(package_name=onslaughtapp_package)
        uiautomator(resourceId=onslaughtapp_resource_id +
                    "wifi_ssid").clear_text()
        uiautomator(resourceId=onslaughtapp_resource_id +
                    "wifi_ssid").set_text(wifi_name)
        uiautomator(resourceId=onslaughtapp_resource_id +
                    "wifi_password").send_keys(wifi_password)
        uiautomator(resourceId=onslaughtapp_resource_id +
                    "connect_to_wifi").click()
        print("the android version of current test device is : " +
              uiauto_device.version)
        """
         对于 android 11 以及以上的系统, 会出现一个系统的弹窗让用户需选择
        """
        version = str(uiauto_device.version)
        if version.__contains__("."):
            ver = version.split(".")[0]
            if int(ver) >= 11:
                uiautomator(resourceId=save_setting_id).click()
        elif int(uiauto_device.version) >= 11:
            uiautomator(resourceId=save_setting_id).click()
        time.sleep(6)