- Here the functionalities like selenium switch window.
- First switch the window and do the functionalities then come back to main window and do the functionalities.
- In Appium also switching between two applications is same concept.
- Here first we have to setup desired capabilities of one application and will do the functionality then in same instances we will switch the app by giving another app info like "app package" and "app activities".
Ex : driver.startActivity("com.boondoggle.mortcalc", "com.boondoggle.mortcalc.MortCalc");
Sample program :
import io.appium.java_client.TouchAction;
import io.appium.java_client.android.AndroidDriver;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.List;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.remote.DesiredCapabilities;
public class Switch_activity {
public static void main(String[] args) throws MalformedURLException, InterruptedException {
// TODO Auto-generated method stub
DesiredCapabilities capabilities= new DesiredCapabilities();
//device details
capabilities.setCapability("deviceName", "xxxx");
capabilities.setCapability("platformName", "Android");
capabilities.setCapability("platformVersion", "6.0");
//app details
capabilities.setCapability("appPackage", "com.mobeta.android.demodslv");
capabilities.setCapability("appActivity", "com.mobeta.android.demodslv.Launcher");
//Appium Server details
AndroidDriver driver= new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);
Thread.sleep(4000);
driver.findElementByXPath("//*[@class='android.widget.TextView'][@text='CursorAdapter']").click();
Thread.sleep(2000);
List<WebElement> ele_draghdl = driver.findElementsById("com.mobeta.android.demodslv:id/drag_handle");
System.out.println(ele_draghdl.size());
TouchAction action= new TouchAction(driver);
action.longPress(ele_draghdl.get(0)).moveTo(ele_draghdl.get(5)).release().perform();
Thread.sleep(8000);
//*****************************************************************
driver.startActivity("com.boondoggle.mortcalc", "com.boondoggle.mortcalc.MortCalc");
Thread.sleep(8000);
driver.findElementById("com.boondoggle.mortcalc:id/var_amount").sendKeys("10000");
driver.findElementById("com.boondoggle.mortcalc:id/var_years").sendKeys("5");
driver.findElementById("com.boondoggle.mortcalc:id/var_interest").sendKeys("12");
driver.findElementById("com.boondoggle.mortcalc:id/buttoncalc").click();
Thread.sleep(5000);
String Output = driver.findElementById("com.boondoggle.mortcalc:id/var_mortgage").getText();
String Actual_Result = Output.replace("$", "");
System.out.println(Actual_Result);
Thread.sleep(8000);
//*************************************************
driver.startActivity("com.bigbasket.mobileapp", "com.bigbasket.mobileapp.activity.SplashActivity");
}
}