2015-06-18 10 views
12

मैं appium का उपयोग कर नियंत्रण केंद्र को खोलने के लिए कोशिश कर रहा हूँ का उपयोग कर और निम्न कोड:पहुँच आईओएस नियंत्रण केंद्र appium

int halfWidth = driver.manage().window().getSize().width/2; 
    int screenHeight = driver.manage().window().getSize().height; 
    driver.swipe(halfWidth, screenHeight-5, halfWidth, screenHeight-300, 500); // driver is instance of IOSDriver 
इसके बजाय ऊपर की ओर नीचे से नियंत्रण केंद्र एप्लिकेशन केवल स्क्रीन पर ड्रॉ खोलने की (

का उपयोग कर निर्देशांक इनपुट)। कोई भी जानता है कि एपियम और स्वाइप (या किसी अन्य तरीके) का उपयोग कर नियंत्रण केंद्र कैसे खोलें?

धन्यवाद, चार्ली

+0

कड़ी चोट के विवरण को देखते हुए() विधि, मैं तो हो सकता है हम नीचे दबाएं संदेह है, फिर बस शुरुआत से आगे बढ़ने की बजाए आगे बढ़ें ... लेकिन मैं इंतजार करूँगा और देख सकता हूं कि अन्य इसकी पुष्टि कर सकते हैं या नहीं। –

उत्तर

-1

ठीक है तो जांच भी पर्याप्त मात्रा में होने के बाद मुझे लगता है कि यह संभव नहीं है। यदि आपको वास्तव में इस कार्यक्षमता की आवश्यकता है तो मुझे लगता है कि बैंगन जैसे उपकरण उचित हो सकते हैं।

4

हम यह कर सकते हैं। मैंने एपियम 1.4.13 में कोशिश की और मैं सेटिंग्स को बदलने में सक्षम हूं।

मैंने अपने iPadAir2 में सेटिंग्स को बदलने के लिए कोड के नीचे उपयोग किया।

int height = driver.findElementByClassName("UIAWindow").getSize().getHeight(); 
int width = driver.findElementByClassName("UIAWindow").getSize().getWidth(); 
driver.swipe(width-100, height, width-100, height-200, 500); 
driver.findElementByAccessibilityId("Wi-Fi").click(); 
+0

क्या आईओएस संस्करणों और/या उपकरणों के बीच वाईफाई एक्सेसिबिलिटी आईडी बदल गई? और आपको नियंत्रण केंद्र में वाईफ़ाई के लिए पहुंच-योग्यता आईडी मान कहां मिला? क्या यह कहीं दस्तावेज है? मुझे कोड स्निपेट के साथ नियंत्रण केंद्र लाने के लिए मिला है, लेकिन यह एक्सेसिबिलिटी आईडी द्वारा वाईफाई बटन/आइकन नहीं ढूंढ सकता है। मैंने आईपॉड टच पर आईओएस 8.4.1, एपियम 1.4.16 और एक्सकोड 7.2 चलाने का परीक्षण किया। – David

+0

मुझे ओएस संस्करणों के बीच अभिगम्यता आईडी परिवर्तन नहीं लगता है। मैंने वाईफाई बटन की पहुंच-योग्यता पहचानने के लिए एपियम इंस्पेक्टर का उपयोग किया। –

0

मैं स्क्रीन क्लिक करें के नीचे से ऊपर वाईफ़ाई बंद टॉगल या

स्वाइप आईओएस

के लिए Appium 1.6.4 बीटा का उपयोग कर हवाईजहाज मोड चालू करने में सक्षम हूँ लिंक जारी वाईफ़ाई क्लिक करें या हवाई जहाज बटन स्क्रीन के बीच से नीचे स्वाइप करें

लेकिन यह सिम्युलेटर में कुछ भी नहीं कर रहा है। मुझे सिम्युलेटर पर इंटरनेट को अक्षम करने के लिए वास्तव में अपने कंप्यूटर इंटरनेट कनेक्शन को बंद करना होगा।

@iOSFindBy(xpath = "//XCUIElementTypeSwitch[@name='Wi-Fi']") 
private MobileElement WIFI_MODE_BUTTON; 

public void disableWifi() { 
    openToolBarMenu(); 
    //if wifi is on/true then turn it off 
    if (WIFI_MODE_BUTTON.getAttribute("value") == "true") { 
     Autoscope.tap(WIFI_MODE_BUTTON); 
    } 
    closeToolBarMenu(); 
} 


@iOSFindBy(xpath = "//XCUIElementTypeButton[@name='Continue']") 
private MobileElement CONTINUE_BUTTON; //continue button on control center 

public void openToolBarMenu() { 
    Autoscope.scrollFromBottomOfScreen(); 
    if (Autoscope.isElementDisplayed(CONTINUE_BUTTON)) { 
     Autoscope.tap(CONTINUE_BUTTON); 
    } 
} 


static public void scrollFromBottomOfScreen() { 
    TouchAction touchAction = new TouchAction(autoscopeDriver); 

    int xStartPoint = Math.round(pixelWidth()/2); 
    int yStartPoint = pixelHeight(); 
    int yEndPoint = 0 - yStartPoint; 
    touchAction.press(xStartPoint, yStartPoint).moveTo(0, yEndPoint).release().perform(); 
} 
0

Appium 1.6.5, तुम्हें पता है, कड़ी चोट विधि का उपयोग कर सकते हैं मेरी अजगर कोड bellow:

window_size = self.driver.get_window_size() # this returns dictionary 
el = self.driver.find_element(*self.configuration.CommonScreen.WEB_VIEW) 
action = TouchAction(self.driver) 
start_x = window_size["width"] * 0.5 
start_y = window_size["height"] 
end_x = window_size["width"] * 0.5 
end_y = window_size["height"] * 0.5 
action.press(el, start_x, start_y).wait(100).move_to(el, end_x, end_y).release().perform() 
संबंधित मुद्दे