Unable to Switch Webview on iOS 10.x, Appium 1.6.3/4Beta, Xcode 8.2.1

Hi all, my iOS UI automation has been blocked by webview for couple weeks after upgrade to Appium 1.6.x. Could you guys please help me out? Much appreciated!!!

Problem:
Not able to switch to context no matter webview or native view. The error log is: Responding to client with driver.setContext() result: null

System:
Appium version : 1.6.3 & 1.6.4-beta
Platform: iOS 10.2.1
Real device: iPhone 6s, iPhone 6s Plus
Java-client: 5.0Beta
OS - Mac El Capitan 10.11.6
Xcode 8.2.1
iOS-webkit-proxy: 1.7.1

The capabilities are:
capabilities.setCapability(“deviceName”, mobileDev.getDeviceName());
capabilities.setCapability(“app”, app.getAbsolutePath());
capabilities.setCapability(“platformName”, mobileDev.getPlatformName());
capabilities.setCapability(“platformVersion”, mobileDev.getPlatformVersion());
capabilities.setCapability(“autoAcceptAlerts”, true);
capabilities.setCapability(“autoWebview”, false);
capabilities.setCapability(“automationName”, “XCUITest”);
capabilities.setCapability(“realDeviceLogger”, “/usr/local/lib/node_modules/deviceconsole/deviceconsole”);

My test code worked fine on Appium 1.5.3 and I created webveiw switch method as bellow:

    Set<String> contextNames = driver.getContextHandles();
    int listSize = contextNames.size();
    String contextName = null;
    String webviewTitleName;
    String elementLocator = IdHolder.getINSTANCE().getArticlePageArticleTitleCss();
    for (int i = listSize - 1; i > 0; i--) {
        contextName = (String) contextNames.toArray()[i];
        if (contextName.equals("NATIVE_APP")) {
            i--;
            continue;
        }
        driver.context(contextName).switchTo();
                try {
                    WebElement webviewTitle = driver.findElement(By.cssSelector(elementLocator));
                    if (webviewTitle.isDisplayed()) {
                        break;
                    }
                } catch (NoSuchElementException e) {
                }
        driver.context("NATIVE_APP").switchTo();
    }

The Appium log is following:
[HTTP] --> POST /wd/hub/session/29c76cb1-9a15-4fe8-a705-7bdc0406141e/element {“using”:"-ios predicate string",“value”:“name = ‘Time with mum is running out’”}
[debug] [MJSONWP] Calling AppiumDriver.findElement() with args: ["-ios predicate string",“name = ‘Time with mum is running out’”,“29c76cb1-9a15-4fe8-a705-7bdc0406141e”]
[debug] [XCUITest] Executing command ‘findElement’
[debug] [BaseDriver] Valid locator strategies for this request: xpath, id, name, class name, -ios predicate string, accessibility id
[debug] [BaseDriver] Waiting up to 0 ms for condition
[debug] [JSONWP Proxy] Proxying [POST /element] to [POST http://localhost:8100/session/5242C946-12CB-4688-BB3A-A5AAFAD931DB/element] with body: {“using”:“predicate string”,“value”:“name = ‘Time with mum is running out’”}
[debug] [JSONWP Proxy] Got response with status 200: {“value”:{“ELEMENT”:“6CD4B557-CAFF-42D0-9CB0-2701AD162B08”,“type”:“XCUIElementTypeStaticText”,“label”:“Time with mum is running out”},“sessionId”:“5242C946-12CB-4688-BB3A-A5AAFAD931DB”,“status”:0}
[debug] [MJSONWP] Responding to client with driver.findElement() result: {“ELEMENT”:“6CD4B557-CAFF-42D0-9CB0-2701AD162B08”,“type”:“XCUIElementTypeStaticText”,“label”:“Time with mum is running out”}
[HTTP] <-- POST /wd/hub/session/29c76cb1-9a15-4fe8-a705-7bdc0406141e/element 200 9445 ms - 196
[HTTP] --> GET /wd/hub/session/29c76cb1-9a15-4fe8-a705-7bdc0406141e/element/6CD4B557-CAFF-42D0-9CB0-2701AD162B08/displayed {}
[MJSONWP] Driver proxy active, passing request on via HTTP proxy
[debug] [XCUITest] Executing command ‘proxyReqRes’
[debug] [JSONWP Proxy] Proxying [GET /wd/hub/session/29c76cb1-9a15-4fe8-a705-7bdc0406141e/element/6CD4B557-CAFF-42D0-9CB0-2701AD162B08/displayed] to [GET http://localhost:8100/session/5242C946-12CB-4688-BB3A-A5AAFAD931DB/element/6CD4B557-CAFF-42D0-9CB0-2701AD162B08/displayed] with body: {}
[debug] [JSONWP Proxy] Got response with status 200: “{\n “value” : true,\n “sessionId” : “5242C946-12CB-4688-BB3A-A5AAFAD931DB”,\n “status” : 0\n}”
[JSONWP Proxy] Replacing sessionId 5242C946-12CB-4688-BB3A-A5AAFAD931DB with 29c76cb1-9a15-4fe8-a705-7bdc0406141e
[HTTP] <-- GET /wd/hub/session/29c76cb1-9a15-4fe8-a705-7bdc0406141e/element/6CD4B557-CAFF-42D0-9CB0-2701AD162B08/displayed 200 4659 ms - 76
[HTTP] --> POST /wd/hub/session/29c76cb1-9a15-4fe8-a705-7bdc0406141e/element/6CD4B557-CAFF-42D0-9CB0-2701AD162B08/click {“id”:“6CD4B557-CAFF-42D0-9CB0-2701AD162B08”}
[MJSONWP] Driver proxy active, passing request on via HTTP proxy
[debug] [XCUITest] Executing command ‘proxyReqRes’
[debug] [JSONWP Proxy] Proxying [POST /wd/hub/session/29c76cb1-9a15-4fe8-a705-7bdc0406141e/element/6CD4B557-CAFF-42D0-9CB0-2701AD162B08/click] to [POST http://localhost:8100/session/5242C946-12CB-4688-BB3A-A5AAFAD931DB/element/6CD4B557-CAFF-42D0-9CB0-2701AD162B08/click] with body: {“id”:“6CD4B557-CAFF-42D0-9CB0-2701AD162B08”}
[debug] [JSONWP Proxy] Got response with status 200: {“status”:0,“id”:“6CD4B557-CAFF-42D0-9CB0-2701AD162B08”,“value”:"",“sessionId”:“5242C946-12CB-4688-BB3A-A5AAFAD931DB”}
[JSONWP Proxy] Replacing sessionId 5242C946-12CB-4688-BB3A-A5AAFAD931DB with 29c76cb1-9a15-4fe8-a705-7bdc0406141e
[HTTP] <-- POST /wd/hub/session/29c76cb1-9a15-4fe8-a705-7bdc0406141e/element/6CD4B557-CAFF-42D0-9CB0-2701AD162B08/click 200 19481 ms - 118
[HTTP] --> GET /wd/hub/session/29c76cb1-9a15-4fe8-a705-7bdc0406141e/contexts {}
[debug] [MJSONWP] Calling AppiumDriver.getContexts() with args: [“29c76cb1-9a15-4fe8-a705-7bdc0406141e”]
[debug] [XCUITest] Executing command ‘getContexts’
[debug] [iOS] Getting list of available contexts
[debug] [iOS] Retrieving contexts and views
[debug] [iOS] Selecting by url: false
[debug] [RemoteDebugger] Getting WebKitRemoteDebugger pageArray: localhost, 27753
[debug] [RemoteDebugger] Sending request to: http://localhost:27753/json
[debug] [RemoteDebugger] Page element JSON: [{“devtoolsFrontendUrl”:"/devtools/devtools.html?ws=localhost:27753/devtools/page/1",“faviconUrl”:"",“thumbnailUrl”:"/thumb/",“title”:"",“url”:"",“webSocketDebuggerUrl”:“ws://localhost:27753/devtools/page/1”,“appId”:“PID:4532”},{“devtoolsFrontendUrl”:"/devtools/devtools.html?ws=localhost:27753/devtools/page/2",“faviconUrl”:"",“thumbnailUrl”:"/thumb/",“title”:"",“url”:"",“webSocketDebuggerUrl”:“ws://localhost:27753/devtools/page/2”,“appId”:“PID:4532”},{“devtoolsFrontendUrl”:"/devtools/devtools.html?ws=localhost:27753/devtools/page/3",“faviconUrl”:"",“thumbnailUrl”:"/thumb/https://googleads.g.doubleclick.net/mads/static/sdk/native/sdk-core-v40.html",“title”:"",“url”:“https://googleads.g.doubleclick.net/mads/static/sdk/native/sdk-core-v40.html”,“webSocketDebuggerUrl”:“ws://localhost:27753/devtools/page/3”,“appId”:“PID:4532”},{“devtoolsFrontendUrl”:"/devtools/devtools.html?ws=localhost:27753/devtools/page/4",“faviconUrl”:"",“thumbnailUrl”:"/thumb/https://pubads.g.doubleclick.net/gampad/ads?request_id=3&u_sso=any&ios_base_sdk=10.1&u_mwsso=p&u_so=p&js=afma-sdk-i-v7.13.0&ios_app_volume=1&is_other_audio_playing=0&ios_output_volume=0.583884&eid=318477337&request_origin=pub&ms=N3YgZxiZQj3MiE_n9cyZfVLIIE6Jqzeq92vPk0oh4dUVP9mqIoiv6odRJHlyplwWO4sfmZRN7gWrhf4Cj9EXzAnEWZXLOyW63LqZgwz-FURE4DzjLOnA9AE2GDVTWdINJ8aL0H-49emfDWjPLSU8lOVztnTEcQyClb91swXdG1gMmNYXVWDZ9jJ5v9-i3-jq-TTnE8s_nvY2sTVCXxBGtOq633maZjp9q8hVyEC4qDk3byTPTCSu1pUqS9-jVkzHidljRQG-1fCRdO2jD3lldy-mp8n4c9d_rUj8FPDj0jlrPWcuYAAo5uGa02KJ7c6qPc5KAB2fRz5a9bI4vKFCZQ&hl=en&u_sd=2&ios_key_window_w=375&cellular_country_code=302&u_w=375&ios_radio=CTRadioAccessTechnologyLTE&u_h=667&submodel=iPhone8%2C1&ios_key_window_h=667&cap_bs=1&net=wi&ios_app_muted=0&should_silence_audio=0&cellular_network_code=370&format=300x250_as&_package_name=nz.co.stuff.stuffApp&u_audio=1&an=1003.14.0.4.iphone.nz.co.stuff.stuffApp&swipeable=1&adk=3395089069&crqc=1&currts=4571&seq_num=2&basets=1&output=html&region=mobile_app&u_tz=-300&url=1003.14.0.4.iphone.nz.co.stuff.stuffApp.adsenseformobileapps.com&gdfp_req=1&markup=html&m_ast=afmajs&impl=ifr&iu=%2F6674%2Fiphone.stuff.homepage%2Fcontent&sz=300x250&correlator=2485157171029598&_hl=en-ca&gsb=wi&caps=interactiveVideo_inlineVideo_mraid1_mraid2_th_autoplay_mediation_av_sdkAdmobApiForAds_di_transparentBackground_sdkVideo_aso_sfv_dinm_dim_nav_ct_dinmo&swdr=false&blockAutoClicks=true&cust_params=appid%3D3_14_0%26env%3Dprod%26pos%3Dhomerec%26sv%3Dipn%26apploc&_efs=false&forceHttps=true&includeDoritos=true&uulel=48&blob=ABPQqLFLhJdhoQh1Cj4on1NWeVwoUkaGJikO7BCcmguIVjmN5VOs6J3bC5vRVfkqpO6Xt8yQMlh6k63jxuxZgOMjGtO1zsaDzEFlQJ9qdVajpfUWiIdy4x0o_Ty7JbL8YdRqaUjofnWpNiFh2pPTS8d8u50rEao5Zz2gWXlKZ3pVq2EkhwDu3GkdlBKc4D4noUToq8UkeW5zs-V-DY6TR6NIlSooSxqn8TQ26MZ2FASwYGGcsrJZ0eg0pjdNAoV5dSrTenqHS0uCYr4TFzFJVqCHVfieDUBPdAwNM0jHTwJsbrkV_Hl7XAhfGuneZg&et=44&tcar=46&jsv=4-production-20170207_RC00&urll=1921#caps=interactiveVideo_inlineVideo_mraid1_mraid2_th_autoplay_mediation_av_sdkAdmobApiForAds_di_transparentBackground_sdkVideo_aso_sfv_dinm_dim_nav_ct_dinmo&eid=318477337&format=300x250_as&js=afma-sdk-i-v7.13.0&seq_num=2",“title”:"",“url”:“https://pubads.g.doubleclick.net/gampad/ads?request_id=3&u_sso=any&ios_base_sdk=10.1&u_mwsso=p&u_so=p&js=afma-sdk-i-v7.13.0&ios_app_volume=1&is_other_audio_playing=0&ios_output_volume=0.583884&eid=318477337&request_origin=pub&ms=N3YgZxiZQj3MiE_n9cyZfVLIIE6Jqzeq92vPk0oh4dUVP9mqIoiv6odRJHlyplwWO4sfmZRN7gWrhf4Cj9EXzAnEWZXLOyW63LqZgwz-FURE4DzjLOnA9AE2GDVTWdINJ8aL0H-49emfDWjPLSU8lOVztnTEcQyClb91swXdG1gMmNYXVWDZ9jJ5v9-i3-jq-TTnE8s_nvY2sTVCXxBGtOq633maZjp9q8hVyEC4qDk3byTPTCSu1pUqS9-jVkzHidljRQG-1fCRdO2jD3lldy-mp8n4c9d_rUj8FPDj0jlrPWcuYAAo5uGa02KJ7c6qPc5KAB2fRz5a9bI4vKFCZQ&hl=en&u_sd=2&ios_key_window_w=375&cellular_country_code=302&u_w=375&ios_radio=CTRadioAccessTechnologyLTE&u_h=667&submodel=iPhone8%2C1&ios_key_window_h=667&cap_bs=1&net=wi&ios_app_muted=0&should_silence_audio=0&cellular_network_code=370&format=300x250_as&_package_name=nz.co.stuff.stuffApp&u_audio=1&an=1003.14.0.4.iphone.nz.co.stuff.stuffApp&swipeable=1&adk=3395089069&crqc=1&currts=4571&seq_num=2&basets=1&output=html&region=mobile_app&u_tz=-300&url=1003.14.0.4.iphone.nz.co.stuff.stuffApp.adsenseformobileapps.com&gdfp_req=1&markup=html&m_ast=afmajs&impl=ifr&iu=%2F6674%2Fiphone.stuff.homepage%2Fcontent&sz=300x250&correlator=2485157171029598&_hl=en-ca&gsb=wi&caps=interactiveVideo_inlineVideo_mraid1_mraid2_th_autoplay_mediation_av_sdkAdmobApiForAds_di_transparentBackground_sdkVideo_aso_sfv_dinm_dim_nav_ct_dinmo&swdr=false&blockAutoClicks=true&cust_params=appid%3D3_14_0%26env%3Dprod%26pos%3Dhomerec%26sv%3Dipn%26apploc&_efs=false&forceHttps=true&includeDoritos=true&uulel=48&blob=ABPQqLFLhJdhoQh1Cj4on1NWeVwoUkaGJikO7BCcmguIVjmN5VOs6J3bC5vRVfkqpO6Xt8yQMlh6k63jxuxZgOMjGtO1zsaDzEFlQJ9qdVajpfUWiIdy4x0o_Ty7JbL8YdRqaUjofnWpNiFh2pPTS8d8u50rEao5Zz2gWXlKZ3pVq2EkhwDu3GkdlBKc4D4noUToq8UkeW5zs-V-DY6TR6NIlSooSxqn8TQ26MZ2FASwYGGcsrJZ0eg0pjdNAoV5dSrTenqHS0uCYr4TFzFJVqCHVfieDUBPdAwNM0jHTwJsbrkV_Hl7XAhfGuneZg&et=44&tcar=46&jsv=4-production-20170207_RC00&urll=1921#caps=interactiveVideo_inlineVideo_mraid1_mraid2_th_autoplay_mediation_av_sdkAdmobApiForAds_di_transparentBackground_sdkVideo_aso_sfv_dinm_dim_nav_ct_dinmo&eid=318477337&format=300x250_as&js=afma-sdk-i-v7.13.0&seq_num=2”,“webSocketDebuggerUrl”:“ws://localhost:27753/devtools/page/4”,“appId”:“PID:4532”},{“devtoolsFrontendUrl”:"/devtools/devtools.html?ws=localhost:27753/devtools/page/5",“faviconUrl”:"",“thumbnailUrl”:"/thumb/https://pubads.g.doubleclick.net/gampad/ads?request_id=4&u_sso=any&ios_base_sdk=10.1&u_mwsso=p&u_so=p&js=afma-sdk-i-v7.13.0&ios_app_volume=1&is_other_audio_playing=0&ios_output_volume=0.583884&eid=318477337&request_origin=pub&ms=yjfdUA-sbyWc3fpkpofnIvCxnvG50hmdkF-_gegn66vFwszHHtMkt1IhxbeQC_QsQBk1KljKM6Is1V1dkKGr3wWwMHZs-zXOGU2UZw6ifqIwIZ106Y5cq8IuuAD0T5pGaTrsunXi8VfdLT1fQDVWM0bNLb-7Ycj3VfPr4lFeC2jBYP9r4tJj033LnYjKaLIH6FCgTMYkDKbdbeLmGzGsauY4-0u4mvP_gsuF1Z2CnV1kAVg18CrO8vImBUtzzKm9daxk_3La99bPzQPqlB0bA6XybQ04q8cOiiSrvM9NRYh1hx9O3Dv8A0s9OYN6CvbwqTorcoqipcxOQbVF68jLQA&hl=en&u_sd=2&ios_key_window_w=375&cellular_country_code=302&u_w=375&ios_radio=CTRadioAccessTechnologyLTE&u_h=667&submodel=iPhone8%2C1&ios_key_window_h=667&cap_bs=1&net=wi&ios_app_muted=0&should_silence_audio=0&cellular_network_code=370&format=300x250_as&_package_name=nz.co.stuff.stuffApp&u_audio=1&an=1003.14.0.4.iphone.nz.co.stuff.stuffApp&swipeable=1&adk=3395089069&crqc=2&currts=5921&seq_num=3&basets=1&output=html&region=mobile_app&u_tz=-300&url=1003.14.0.4.iphone.nz.co.stuff.stuffApp.adsenseformobileapps.com&gdfp_req=1&markup=html&m_ast=afmajs&impl=ifr&iu=%2F6674%2Fiphone.stuff.homepage%2Fcontent&sz=300x250&correlator=3235038179414819&_hl=en-ca&gsb=wi&caps=interactiveVideo_inlineVideo_mraid1_mraid2_th_autoplay_mediation_av_sdkAdmobApiForAds_di_transparentBackground_sdkVideo_aso_sfv_dinm_dim_nav_ct_dinmo&swdr=false&blockAutoClicks=true&cust_params=appid%3D3_14_0%26env%3Dprod%26pos%3Dbottomrec%26sv%3Dipn%26apploc&_efs=false&forceHttps=true&includeDoritos=true&uulel=48&blob=ABPQqLF4LxVCQMDG8IWvPtVLk1dx5y-OREG7dM-1CxGq2fO56u_AmAe2ynKqGS6WQHhSU_gOG6H_cHnpBqSuhvz-8UshOMmh61AXE1r-aXLgNjQJDXFAYmC-mZwvoiH1srCBNFfdCnJe3NY3g5FN3KOCo4DBnv5vi1pUeUHMnnBmGVlmzQBMh_7sVjd-F4v7pRQRRPrBxt40BpW1h6GgjqY0lQZQNN0XfTVPiXHxQte5JRZ8qizLr4B2cke2BGFTv5SCUM2oRhsHIwYt_Nu50JhjGlLE1xNmPLBbBOO8Rg1t10_BqkrqbzJks0b0KQ&et=22&tcar=24&jsv=4-production-20170207_RC00&urll=1923#caps=interactiveVideo_inlineVideo_mraid1_mraid2_th_autoplay_mediation_av_sdkAdmobApiForAds_di_transparentBackground_sdkVideo_aso_sfv_dinm_dim_nav_ct_dinmo&eid=318477337&format=300x250_as&js=afma-sdk-i-v7.13.0&seq_num=3",“title”:"",“url”:“https://pubads.g.doubleclick.net/gampad/ads?request_id=4&u_sso=any&ios_base_sdk=10.1&u_mwsso=p&u_so=p&js=afma-sdk-i-v7.13.0&ios_app_volume=1&is_other_audio_playing=0&ios_output_volume=0.583884&eid=318477337&request_origin=pub&ms=yjfdUA-sbyWc3fpkpofnIvCxnvG50hmdkF-_gegn66vFwszHHtMkt1IhxbeQC_QsQBk1KljKM6Is1V1dkKGr3wWwMHZs-zXOGU2UZw6ifqIwIZ106Y5cq8IuuAD0T5pGaTrsunXi8VfdLT1fQDVWM0bNLb-7Ycj3VfPr4lFeC2jBYP9r4tJj033LnYjKaLIH6FCgTMYkDKbdbeLmGzGsauY4-0u4mvP_gsuF1Z2CnV1kAVg18CrO8vImBUtzzKm9daxk_3La99bPzQPqlB0bA6XybQ04q8cOiiSrvM9NRYh1hx9O3Dv8A0s9OYN6CvbwqTorcoqipcxOQbVF68jLQA&hl=en&u_sd=2&ios_key_window_w=375&cellular_country_code=302&u_w=375&ios_radio=CTRadioAccessTechnologyLTE&u_h=667&submodel=iPhone8%2C1&ios_key_window_h=667&cap_bs=1&net=wi&ios_app_muted=0&should_silence_audio=0&cellular_network_code=370&format=300x250_as&_package_name=nz.co.stuff.stuffApp&u_audio=1&an=1003.14.0.4.iphone.nz.co.stuff.stuffApp&swipeable=1&adk=3395089069&crqc=2&currts=5921&seq_num=3&basets=1&output=html&region=mobile_app&u_tz=-300&url=1003.14.0.4.iphone.nz.co.stuff.stuffApp.adsenseformobileapps.com&gdfp_req=1&markup=html&m_ast=afmajs&impl=ifr&iu=%2F6674%2Fiphone.stuff.homepage%2Fcontent&sz=300x250&correlator=3235038179414819&_hl=en-ca&gsb=wi&caps=interactiveVideo_inlineVideo_mraid1_mraid2_th_autoplay_mediation_av_sdkAdmobApiForAds_di_transparentBackground_sdkVideo_aso_sfv_dinm_dim_nav_ct_dinmo&swdr=false&blockAutoClicks=true&cust_params=appid%3D3_14_0%26env%3Dprod%26pos%3Dbottomrec%26sv%3Dipn%26apploc&_efs=false&forceHttps=true&includeDoritos=true&uulel=48&blob=ABPQqLF4LxVCQMDG8IWvPtVLk1dx5y-OREG7dM-1CxGq2fO56u_AmAe2ynKqGS6WQHhSU_gOG6H_cHnpBqSuhvz-8UshOMmh61AXE1r-aXLgNjQJDXFAYmC-mZwvoiH1srCBNFfdCnJe3NY3g5FN3KOCo4DBnv5vi1pUeUHMnnBmGVlmzQBMh_7sVjd-F4v7pRQRRPrBxt40BpW1h6GgjqY0lQZQNN0XfTVPiXHxQte5JRZ8qizLr4B2cke2BGFTv5SCUM2oRhsHIwYt_Nu50JhjGlLE1xNmPLBbBOO8Rg1t10_BqkrqbzJks0b0KQ&et=22&tcar=24&jsv=4-production-20170207_RC00&urll=1923#caps=interactiveVideo_inlineVideo_mraid1_mraid2_th_autoplay_mediation_av_sdkAdmobApiForAds_di_transparentBackground_sdkVideo_aso_sfv_dinm_dim_nav_ct_dinmo&eid=318477337&format=300x250_as&js=afma-sdk-i-v7.13.0&seq_num=3”,“webSocketDebuggerUrl”:“ws://localhost:27753/devtools/page/5”,“appId”:“PID:4532”},{“devtoolsFrontendUrl”:"/devtools/devtools.html?ws=localhost:27753/devtools/page/6",“faviconUrl”:"",“thumbnailUrl”:"/thumb/https://googleads.g.doubleclick.net/mads/static/sdk/native/sdk-core-v40.html",“title”:"",“url”:“https://googleads.g.doubleclick.net/mads/static/sdk/native/sdk-core-v40.html”,“webSocketDebuggerUrl”:“ws://localhost:27753/devtools/page/6”,“appId”:"PID:4532"}]
[debug] [MJSONWP] Responding to client with driver.getContexts() result: [“NATIVE_APP”,“WEBVIEW_3”,“WEBVIEW_4”,“WEBVIEW_5”,“WEBVIEW_6”]
[HTTP] <-- GET /wd/hub/session/29c76cb1-9a15-4fe8-a705-7bdc0406141e/contexts 200 16 ms - 134
[HTTP] --> POST /wd/hub/session/29c76cb1-9a15-4fe8-a705-7bdc0406141e/context {“name”:“WEBVIEW_6”}
[debug] [MJSONWP] Calling AppiumDriver.setContext() with args: [“WEBVIEW_6”,“29c76cb1-9a15-4fe8-a705-7bdc0406141e”]
[debug] [XCUITest] Executing command ‘setContext’
[debug] [iOS] Attempting to set context to ‘WEBVIEW_6’
[debug] [RemoteDebugger] WebKit debugger web socket connected to url: ws://localhost:27753/devtools/page/6
[debug] [MJSONWP] Responding to client with driver.setContext() result: null
[HTTP] <-- POST /wd/hub/session/29c76cb1-9a15-4fe8-a705-7bdc0406141e/context 200 16 ms - 76
[HTTP] --> POST /wd/hub/session/29c76cb1-9a15-4fe8-a705-7bdc0406141e/element {“using”:“css selector”,“value”:"[class=’${article.title.class}’]"}
[debug] [MJSONWP] Calling AppiumDriver.findElement() with args: [“css selector”,"
[class=’${article.title.class}’]",“29c76cb1-9a15-4fe8-a705-7bdc0406141e”]
[debug] [XCUITest] Executing command ‘findElement’
[debug] [BaseDriver] Valid locator strategies for this request: xpath, id, name, class name, -ios predicate string, accessibility id
[debug] [BaseDriver] Waiting up to 0 ms for condition
[debug] [RemoteDebugger] Executing ‘find_element’ atom in default context
[debug] [RemoteDebugger] Sending javascript command (function(){return function(){var aa=“function”…
[debug] [RemoteDebugger] Sending WebKit data: {“method”:“Runtime.evaluate…
[debug] [RemoteDebugger] Receiving WebKit data: {“result”:{“result”:{“type”…
[debug] [RemoteDebugger] Found handler for message ‘1’
[debug] [RemoteDebugger] Received result for atom ‘find_element’ execution: null
[HTTP] <-- POST /wd/hub/session/29c76cb1-9a15-4fe8-a705-7bdc0406141e/element 500 162 ms - 164
[HTTP] --> POST /wd/hub/session/29c76cb1-9a15-4fe8-a705-7bdc0406141e/context {“name”:“NATIVE_APP”}
[debug] [MJSONWP] Calling AppiumDriver.setContext() with args: [“NATIVE_APP”,“29c76cb1-9a15-4fe8-a705-7bdc0406141e”]
[debug] [XCUITest] Executing command ‘setContext’
[debug] [iOS] Attempting to set context to ‘NATIVE_APP’
[debug] [RemoteDebugger] Disconnecting from WebKit remote debugger
[debug] [MJSONWP] Responding to client with driver.setContext() result: null
[HTTP] <-- POST /wd/hub/session/29c76cb1-9a15-4fe8-a705-7bdc0406141e/context 200 9 ms - 76
[debug] [RemoteDebugger] WebKit remote debugger socket disconnected
[HTTP] --> POST /wd/hub/session/29c76cb1-9a15-4fe8-a705-7bdc0406141e/context {“name”:“WEBVIEW_5”}
[debug] [MJSONWP] Calling AppiumDriver.setContext() with args: [“WEBVIEW_5”,“29c76cb1-9a15-4fe8-a705-7bdc0406141e”]
[debug] [XCUITest] Executing command ‘setContext’
[debug] [iOS] Attempting to set context to ‘WEBVIEW_5’
[debug] [RemoteDebugger] WebKit debugger web socket connected to url: ws://localhost:27753/devtools/page/5
[debug] [MJSONWP] Responding to client with driver.setContext() result: null
[HTTP] <-- POST /wd/hub/session/29c76cb1-9a15-4fe8-a705-7bdc0406141e/context 200 8 ms - 76
[HTTP] --> POST /wd/hub/session/29c76cb1-9a15-4fe8-a705-7bdc0406141e/element {“using”:“css selector”,“value”:”[class=’${article.title.class}’]"}
[debug] [MJSONWP] Calling AppiumDriver.findElement() with args: [“css selector”,"
[class=’${article.title.class}’]",“29c76cb1-9a15-4fe8-a705-7bdc0406141e”]
[debug] [XCUITest] Executing command ‘findElement’
[debug] [BaseDriver] Valid locator strategies for this request: xpath, id, name, class name, -ios predicate string, accessibility id
[debug] [BaseDriver] Waiting up to 0 ms for condition
[debug] [RemoteDebugger] Executing ‘find_element’ atom in default context
[debug] [RemoteDebugger] Sending javascript command (function(){return function(){var aa=“function”…
[debug] [RemoteDebugger] Sending WebKit data: {“method”:“Runtime.evaluate…
[debug] [RemoteDebugger] Receiving WebKit data: {“result”:{“result”:{“type”…
[debug] [RemoteDebugger] Found handler for message ‘1’
[debug] [RemoteDebugger] Received result for atom ‘find_element’ execution: null
[HTTP] <-- POST /wd/hub/session/29c76cb1-9a15-4fe8-a705-7bdc0406141e/element 500 194 ms - 164
[HTTP] --> POST /wd/hub/session/29c76cb1-9a15-4fe8-a705-7bdc0406141e/context {“name”:“NATIVE_APP”}
[debug] [MJSONWP] Calling AppiumDriver.setContext() with args: [“NATIVE_APP”,“29c76cb1-9a15-4fe8-a705-7bdc0406141e”]
[debug] [XCUITest] Executing command ‘setContext’
[debug] [iOS] Attempting to set context to ‘NATIVE_APP’
[debug] [RemoteDebugger] Disconnecting from WebKit remote debugger
[debug] [MJSONWP] Responding to client with driver.setContext() result: null
[HTTP] <-- POST /wd/hub/session/29c76cb1-9a15-4fe8-a705-7bdc0406141e/context 200 15 ms - 76
[debug] [RemoteDebugger] WebKit remote debugger socket disconnected
[HTTP] --> POST /wd/hub/session/29c76cb1-9a15-4fe8-a705-7bdc0406141e/context {“name”:“WEBVIEW_4”}
[debug] [MJSONWP] Calling AppiumDriver.setContext() with args: [“WEBVIEW_4”,“29c76cb1-9a15-4fe8-a705-7bdc0406141e”]
[debug] [XCUITest] Executing command ‘setContext’
[debug] [iOS] Attempting to set context to ‘WEBVIEW_4’
[debug] [RemoteDebugger] WebKit debugger web socket connected to url: ws://localhost:27753/devtools/page/4
[debug] [MJSONWP] Responding to client with driver.setContext() result: null
[HTTP] <-- POST /wd/hub/session/29c76cb1-9a15-4fe8-a705-7bdc0406141e/context 200 28 ms - 76
[HTTP] --> POST /wd/hub/session/29c76cb1-9a15-4fe8-a705-7bdc0406141e/element {“using”:“css selector”,“value”:”[class=’${article.title.class}’]"}
[debug] [MJSONWP] Calling AppiumDriver.findElement() with args: [“css selector”,"
[class=’${article.title.class}’]",“29c76cb1-9a15-4fe8-a705-7bdc0406141e”]
[debug] [XCUITest] Executing command ‘findElement’
[debug] [BaseDriver] Valid locator strategies for this request: xpath, id, name, class name, -ios predicate string, accessibility id
[debug] [BaseDriver] Waiting up to 0 ms for condition
[debug] [RemoteDebugger] Executing ‘find_element’ atom in default context
[debug] [RemoteDebugger] Sending javascript command (function(){return function(){var aa=“function”…
[debug] [RemoteDebugger] Sending WebKit data: {“method”:“Runtime.evaluate…
[debug] [RemoteDebugger] Receiving WebKit data: {“result”:{“result”:{“type”…
[debug] [RemoteDebugger] Found handler for message ‘1’
[debug] [RemoteDebugger] Received result for atom ‘find_element’ execution: null
[HTTP] <-- POST /wd/hub/session/29c76cb1-9a15-4fe8-a705-7bdc0406141e/element 500 29 ms - 164
[HTTP] --> POST /wd/hub/session/29c76cb1-9a15-4fe8-a705-7bdc0406141e/context {“name”:“NATIVE_APP”}
[debug] [MJSONWP] Calling AppiumDriver.setContext() with args: [“NATIVE_APP”,“29c76cb1-9a15-4fe8-a705-7bdc0406141e”]
[debug] [XCUITest] Executing command ‘setContext’
[debug] [iOS] Attempting to set context to ‘NATIVE_APP’
[debug] [RemoteDebugger] Disconnecting from WebKit remote debugger
[debug] [MJSONWP] Responding to client with driver.setContext() result: null
[HTTP] <-- POST /wd/hub/session/29c76cb1-9a15-4fe8-a705-7bdc0406141e/context 200 3 ms - 76
[debug] [RemoteDebugger] WebKit remote debugger socket disconnected
[HTTP] --> POST /wd/hub/session/29c76cb1-9a15-4fe8-a705-7bdc0406141e/context {“name”:“WEBVIEW_3”}
[debug] [MJSONWP] Calling AppiumDriver.setContext() with args: [“WEBVIEW_3”,“29c76cb1-9a15-4fe8-a705-7bdc0406141e”]
[debug] [XCUITest] Executing command ‘setContext’
[debug] [iOS] Attempting to set context to ‘WEBVIEW_3’
[debug] [RemoteDebugger] WebKit debugger web socket connected to url: ws://localhost:27753/devtools/page/3
[debug] [MJSONWP] Responding to client with driver.setContext() result: null
[HTTP] <-- POST /wd/hub/session/29c76cb1-9a15-4fe8-a705-7bdc0406141e/context 200 8 ms - 76
[HTTP] --> POST /wd/hub/session/29c76cb1-9a15-4fe8-a705-7bdc0406141e/element {“using”:“css selector”,“value”:”[class=’${article.title.class}’]"}
[debug] [MJSONWP] Calling AppiumDriver.findElement() with args: [“css selector”,"
[class=’${article.title.class}’]",“29c76cb1-9a15-4fe8-a705-7bdc0406141e”]
[debug] [XCUITest] Executing command ‘findElement’
[debug] [BaseDriver] Valid locator strategies for this request: xpath, id, name, class name, -ios predicate string, accessibility id
[debug] [BaseDriver] Waiting up to 0 ms for condition
[debug] [RemoteDebugger] Executing ‘find_element’ atom in default context
[debug] [RemoteDebugger] Sending javascript command (function(){return function(){var aa=“function”…
[debug] [RemoteDebugger] Sending WebKit data: {“method”:"Runtime.evaluate…
[debug] [RemoteDebugger] Receiving WebKit data: {“result”:{“result”:{“type”…
[debug] [RemoteDebugger] Found handler for message ‘1’
[debug] [RemoteDebugger] Received result for atom ‘find_element’ execution: null
[HTTP] <-- POST /wd/hub/session/29c76cb1-9a15-4fe8-a705-7bdc0406141e/element 500 50 ms - 164
[HTTP] --> POST /wd/hub/session/29c76cb1-9a15-4fe8-a705-7bdc0406141e/context {“name”:“NATIVE_APP”}
[debug] [MJSONWP] Calling AppiumDriver.setContext() with args: [“NATIVE_APP”,“29c76cb1-9a15-4fe8-a705-7bdc0406141e”]
[debug] [XCUITest] Executing command ‘setContext’
[debug] [iOS] Attempting to set context to ‘NATIVE_APP’
[debug] [RemoteDebugger] Disconnecting from WebKit remote debugger
[debug] [MJSONWP] Responding to client with driver.setContext() result: null
[HTTP] <-- POST /wd/hub/session/29c76cb1-9a15-4fe8-a705-7bdc0406141e/context 200 8 ms - 76
[debug] [RemoteDebugger] WebKit remote debugger socket disconnected
End testing at : 2017-02-10 11:15:51

A part from that, I tried switch context from Appium 1.5.3 inspector after launched Appium 1.6.x. command lines and ios-webkit-proxy. But the message are:
[debug] [MJSONWP] Responding to client with driver.getContexts() result: [“NATIVE_APP”,“WEBVIEW_10”,“WEBVIEW_11”,“WEBVIEW_12”]
[HTTP] <-- GET /wd/hub/session/1f1fcf32-e228-425b-ac06-1eeb5b111c6a/contexts 200 12 ms - 125
[debug] [XCUITest] Connection to WDA timed out
[debug] [iProxy] recv failed: Operation not permitted
[HTTP] --> POST /wd/hub/session/1f1fcf32-e228-425b-ac06-1eeb5b111c6a/context {“context”:“WEBVIEW_11”}
[debug] [MJSONWP] Bad parameters: BadParametersError: Parameters were incorrect. We wanted {“required”:[“name”]} and you sent [“context”]

Do you folks get this issue and how to deal with it? I did lots of research but unavailable.

Thanks again and have a great weekend!