iOS APIs
This page lists the APIs specific to iOS. These APIs have an _i prefix in camel case, example: _iRotate.
These APIs will work only on an iOS device/simulator.
These APIs will work only on an iOS device/simulator.
Action APIs
_iTwoFingerTap
Since: | Sahi Pro | Desktop Add-On | Mobile Add-On | SAP Add-On | AI Assist Add-On |
NA | NA | 7.5.0 | NA | NA |
Available for modes: iOS
_iTwoFingerTap($element)
Arguments
$element | iOS Element | Element to be tapped. |
Returns
null |
Sahi Pro Flowcharts Action :ITwo Finger Tap
Details
Simulates two finger touches on an element, each with a single tap.
Simulates two finger touches on an element, each with a single tap.
_iTwoFingerTap(_image("abc"));
_iTapWithNumberOfTapsNumberOfTouches
Since: | Sahi Pro | Desktop Add-On | Mobile Add-On | SAP Add-On | AI Assist Add-On |
NA | NA | 7.5.0 | NA | NA |
Available for modes: iOS
_iTapWithNumberOfTapsNumberOfTouches($element, $taps, $touches)
Arguments
$element | iOS Element | element to be tapped |
$taps | integer | Number of taps |
$touches | integer | Number of touches. |
Returns
null |
Sahi Pro Flowcharts Action :ITap With Number Of Taps Number Of Touches
Details
Simulates number of finger touches on an element, each with a number of taps. NOTE that the first parameter is for taps and the second is for touches.
Simulates number of finger touches on an element, each with a number of taps. NOTE that the first parameter is for taps and the second is for touches.
_iTapWithNumberOfTapsNumberOfTouches(_iMap(0), 2, 1); // One touch, with two taps. Same as _doubleClick
_iTapWithNumberOfTapsNumberOfTouches(_iMap(0), 1, 2); // Two touches, each with a single tap. Same as _iTwoFingerTap
_iRotate
Since: | Sahi Pro | Desktop Add-On | Mobile Add-On | SAP Add-On | AI Assist Add-On |
NA | NA | 7.5.0 | NA | NA |
Available for modes: iOS
_iRotate($element, $rotationAngle, $velocity)
Arguments
$element | iOS Element | Element to be rotated |
$rotationAngle | float | Rotation of the gesture in radians. A positive value indicates a clockwise rotation. A negative value indicates counter clockwise rotation. |
$velocity | float | Velocity of the rotation gesture in radians per second. If rotationAngle is negative, then velocity must be negative. |
Returns
null |
Sahi Pro Flowcharts Action :IRotate
Details
Simulates a rotation gesture on an element.
Simulates a rotation gesture on an element.
_iRotate(_iMap(0), Math.PI/4, 0.5); // Clockwise rotation
_iRotate(_iMap(0), -Math.PI/4, -0.5); // Counter-clockwise rotation
_iActivateSiriWithVoiceRecognitionText
Since: | Sahi Pro | Desktop Add-On | Mobile Add-On | SAP Add-On | AI Assist Add-On |
NA | NA | 7.5.0 | NA | NA |
Available for modes: iOS
_iActivateSiriWithVoiceRecognitionText($text)
Arguments
$text | string | Text to be recognized. |
Returns
null |
Sahi Pro Flowcharts Action :IActivate Siri With Voice Recognition Text
Details
Activates Siri with voice recognition text.
Works only on iOS devices/simulators with iOS version greater than iOS 10.3.
Activates Siri with voice recognition text.
Works only on iOS devices/simulators with iOS version greater than iOS 10.3.
_iActivateSiriWithVoiceRecognitionText("Please set a reminder for my meeting with John");
_iPressVolumeUp
Since: | Sahi Pro | Desktop Add-On | Mobile Add-On | SAP Add-On | AI Assist Add-On |
NA | NA | 7.5.0 | NA | NA |
Available for modes: iOS
_iPressVolumeUp()
Arguments
None |
Returns
null |
Sahi Pro Flowcharts Action :IPress Volume Up
Details
Simulates volume up action on an iOS Device.
Works only on an iOS device, and not on an iOS simulator.
Simulates volume up action on an iOS Device.
Works only on an iOS device, and not on an iOS simulator.
_iPressVolumeUp();
_iPressVolumeDown
Since: | Sahi Pro | Desktop Add-On | Mobile Add-On | SAP Add-On | AI Assist Add-On |
NA | NA | 7.5.0 | NA | NA |
Available for modes: iOS
_iPressVolumeDown()
Arguments
None |
Returns
null |
Sahi Pro Flowcharts Action :IPress Volume Down
Details
Simulates volume down action on an iOS Device.
Works only on an iOS device, and not on an iOS simulator.
Simulates volume down action on an iOS Device.
Works only on an iOS device, and not on an iOS simulator.
_iPressVolumeDown();
Fetch APIs
_iIsSelected
Since: | Sahi Pro | Desktop Add-On | Mobile Add-On | SAP Add-On | AI Assist Add-On |
NA | NA | 7.5.0 | NA | NA |
Available for modes: iOS
_iIsSelected($element)
Arguments
$element | iOS Element | Element whose isSelected attribute is to be checked. |
Returns
boolean | true or false based on whether the element is selected or not. |
Sahi Pro Flowcharts Action :IIs Selected
Details
Returns true if the element is selected. Otherwise, returns false.
Returns true if the element is selected. Otherwise, returns false.
var $selected = _iIsSelected(_button("radio-button"));
_iIsDevice
Since: | Sahi Pro | Desktop Add-On | Mobile Add-On | SAP Add-On | AI Assist Add-On |
NA | NA | 7.5.0 | NA | NA |
Available for modes: iOS
_iIsDevice()
Arguments
None |
Returns
boolean | true or false based on whether the running platform is an iOS device. |
Sahi Pro Flowcharts Action :IIs Device
Details
Returns true if the running platform is an iOS device. Returns false for an iOS simulator.
Returns true if the running platform is an iOS device. Returns false for an iOS simulator.
if (_iIsDevice()) { // Volume down can be simulated only for an iOS device.
_iPressVolumeDown();
}
_iGetApplicationState
Since: | Sahi Pro | Desktop Add-On | Mobile Add-On | SAP Add-On | AI Assist Add-On |
NA | NA | 7.5.0 | NA | NA |
Available for modes: iOS
_iGetApplicationState($bundleId)
Arguments
$bundleId | iOS App Bundle Id | Bundle id of application whose state is required.Element whose isSelected attribute is to be checked. |
Returns
boolean | State of application as number. |
Sahi Pro Flowcharts Action :IGet Application State
Details
Returns state of application.
Returns state of application.
var $state = _iGetApplicationState("com.sahipro.ios.test.SahiTestApp");
info
_iGetApplicationState
returns state of application as follows:
0 - Application state is unknown
1 - Application is not running
2 - Application is suspended
3 - Application is running in background
4 - Application is running in forground
System Dialog APIs
In iOS, system dialogs cannot be automated with regular APIs. For example, one cannot use _click to click on the Allow button in a system dialog.Refer to Automating System Dialogs for details on how to automate a system dialog.
_iExpectSystemDialog
Since: | Sahi Pro | Desktop Add-On | Mobile Add-On | SAP Add-On | AI Assist Add-On |
NA | NA | 7.5.0 | NA | NA |
Available for modes: iOS
_iExpectSystemDialog($message, $buttonIdentifier[, $persist])
Arguments
$message | string | Message to expect in dialog. This can also be a regular expression |
$buttonIdentifier | string|integer | Sahi Identifier for the button. Can also be just an index. |
$persist | boolean optional | If true, will accept a single _iExpectSystemDialog statement for all system dialogs coming after the statement. If false, will accept only the next system dialog to work with the _iExpectSystemDialog statement. Default is false. |
Returns
null |
Sahi Pro Flowcharts Action :IExpect System Dialog
Details
_iExpectSystemDialog tells Sahi to click the button with the given buttonIdentifier, for a dialog with given message.
_iExpectSystemDialog tells Sahi to click the button with the given buttonIdentifier, for a dialog with given message.
var $dialogLabelExpected = "/Allow.*Maps.*location/";
var $btnTextToClick = "Allow"; // This will click the "Allow" button
// Set the expected dialog label, and indicate the button to click.
_iExpectSystemDialog($dialogLabelExpected, $btnTextToClick);
_iInteractWithApp
Since: | Sahi Pro | Desktop Add-On | Mobile Add-On | SAP Add-On | AI Assist Add-On |
NA | NA | 7.5.0 | NA | NA |
Available for modes: iOS
_iInteractWithApp()
Arguments
None |
Returns
null |
Sahi Pro Flowcharts Action :IInteract With App
Details
For iOS to invoke the system dialog handler, the app has to be interacted with. _iInteractWithApp() does just that.
For iOS to invoke the system dialog handler, the app has to be interacted with. _iInteractWithApp() does just that.
_iInteractWithApp();
_iLastSystemDialog
Since: | Sahi Pro | Desktop Add-On | Mobile Add-On | SAP Add-On | AI Assist Add-On |
NA | NA | 7.5.0 | NA | NA |
Available for modes: iOS
_iLastSystemDialog([$alldialogs])
Arguments
$alldialogs | boolean optional | If true, returns array of all system dialog messages. |
Returns
string | last system dialog message if $alldialogs is false |
array of strings | an array of all dialog messages in the browser if $alldialogs is true |
Sahi Pro Flowcharts Action :ILast System Dialog
Details
// Return array of all system dialog messages.
var $allMessages = _iLastSystemDialog(true);
// Return only last system dialog message.
var $lastMessage= _iLastSystemDialog();
_iClearLastSystemDialog
Since: | Sahi Pro | Desktop Add-On | Mobile Add-On | SAP Add-On | AI Assist Add-On |
NA | NA | 7.5.0 | NA | NA |
Available for modes: iOS
_iClearLastSystemDialog()
Arguments
None |
Returns
null |
Sahi Pro Flowcharts Action :IClear Last System Dialog
Details
Removes the last system dialog message from session so that further occurrence of system dialogs can be checked
Removes the last system dialog message from session so that further occurrence of system dialogs can be checked
_iClearLastSystemDialog();
System Dialog Example
var $dialogLabelExpected = "/Allow.*Maps.*location/";
var $btnTextToClick = "Allow";
// Set the expected dialog label, and indicate the button to click.
_iExpectSystemDialog($dialogLabelExpected, $btnTextToClick);
// Activate the Maps application
_mActivateApplication("com.apple.Maps", true);
// Wait a little while so that the system dialog comes up.
_wait(3000);
// IMPORTANT: Interact with the app. This is what will trigger the dialog handler.
_iInteractWithApp();
// Sahi would click on the Allow button now.
// Get the last dialog label and assert that it is same as expected.
var $dialogLabelActual = _iLastSystemDialog();
_assertEqual($dialogLabelExpected, $dialogLabelActual);
Other APIs
_iSetAutoDismissKeyboard
Since: | Sahi Pro | Desktop Add-On | Mobile Add-On | SAP Add-On | AI Assist Add-On |
NA | NA | 8.0.0 | NA | NA |
Available for modes: iOS
_iSetAutoDismissKeyboard($autoDismiss)
Arguments
$autoDismiss | boolean | true or false |
Returns
null |
Sahi Pro Flowcharts Action :ISet Auto Dismiss Keyboard
Details
By default, Sahi will try to dismiss keyboard automatically after setting value in the textfield. To disable this functionaity set it to false.
Sahi will try to click on the keyboard button provided by
By default, Sahi will try to dismiss keyboard automatically after setting value in the textfield. To disable this functionaity set it to false.
Sahi will try to click on the keyboard button provided by
ios.keyboard.buttons.autoclick
property in SAHI_INSTALL_PATH\config\sahi.properties
.