Here is my code… package Emai;
import java.net.MalformedURLException;
import java.net.URI;
import java.net.URL;
import org.openqa.selenium.By;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.remote.DesiredCapabilities;
import io.appium.java_client.android.AndroidDriver;
public class LogIn {
public static void main(String[] args) throws MalformedURLException, InterruptedException {
// Desired Capabilities
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability("deviceName","INFINIX Infinix X670 API 33");
capabilities.setCapability("platformName","Android");
capabilities.setCapability("automationName","uiAutomator2");
capabilities.setCapability("platformversion","13");
capabilities.setCapability("appPackage","org.fao.empresi.mobile.android.appraise");
capabilities.setCapability("appActivity","org.fao.empresi.mobile.android.activities.EMAiLoginActivity");
URL url = URI.create("http://127.0.0.1:4723/wd/hub").toURL();
AndroidDriver driver = new AndroidDriver(url, capabilities);
Thread.sleep(5000);
System.out.println("Application started sucessfully");
// Locate the email field and send keys
WebElement UserId = driver.findElement(By.id("org.fao.empresi.mobile.android.appraise:id/etUserId"));
UserId.sendKeys("[email protected]");
// Locate the password field and send keys
WebElement Password = driver.findElement(By.id("org.fao.empresi.mobile.android.appraise:id/etUserPassword"));
Password.sendKeys("zainab.shahbaz");
// Locate the button and click
WebElement SignInButton = driver.findElement(By.id("org.fao.empresi.mobile.android.appraise:id/button"));
SignInButton.click();
System.out.println("Login Sucessful");
driver.quit();
}
}
and this is my pom.xml… <?xml version="1.0" encoding="UTF-8"?>
4.0.0
fao.org
Ema-iPlus
0.0.1-SNAPSHOT
jar
Ema-iPlus
http://www.example.com
<!-- https://mvnrepository.com/artifact/io.appium/java-client -->
io.appium
java-client
9.2.2
org.seleniumhq.selenium
selenium-java
4.20.0
org.apache.maven.plugins
maven-surefire-plugin
3.0.0-M5
............. and this is the error............... Exception in thread "main" org.openqa.selenium.SessionNotCreatedException: Could not start a new session. Response code 500. Message: An unknown server-side error occurred while processing the command. Original error: Cannot start the 'org.fao.empresi.mobile.android.appraise' application. Visit https://github.com/appium/appium/blob/master/docs/en/writing-running-appium/android/activity-startup.md for troubleshooting. Original error: Cannot start the 'org.fao.empresi.mobile.android.appraise' application. Visit https://github.com/appium/appium/blob/master/docs/en/writing-running-appium/android/activity-startup.md for troubleshooting. Original error: Activity name '.EMAiLoginActivity' used to start the app doesn't exist or cannot be launched! Make sure it exists and is a launchable activity
Host info: host: 'DESKTOP-NMGP96O', ip: '192.168.10.4'
Build info: version: '4.21.0', revision: '79ed462ef4'
System info: os.name: 'Windows 10', os.arch: 'amd64', os.version: '10.0', java.version: '22.0.1'
Driver info: io.appium.java_client.android.AndroidDriver
Command: [null, newSession {capabilities=[{appium:appActivity=EMAiLoginActivity, platformName=ANDROID, appium:automationName=uiAutomator2, appium:deviceName=INFINIX Infinix X670 API 33, appium:appPackage=org.fao.empresi.mobile.android.appraise, appium:platformversion=13}], desiredCapabilities=Capabilities {appActivity: EMAiLoginActivity, appPackage: org.fao.empresi.mobile.andr..., automationName: uiAutomator2, deviceName: INFINIX Infinix X670 API 33, platformName: ANDROID, platformversion: 13}}]
Capabilities {appActivity: EMAiLoginActivity, appPackage: org.fao.empresi.mobile.andr..., automationName: uiAutomator2, deviceName: INFINIX Infinix X670 API 33, platformName: ANDROID, platformversion: 13}
at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:114)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
at java.base/java.lang.reflect.Method.invoke(Method.java:580)
at io.appium.java_client.remote.AppiumProtocolHandshake.createSession(AppiumProtocolHandshake.java:116)
at io.appium.java_client.remote.AppiumProtocolHandshake.createSession(AppiumProtocolHandshake.java:96)
at io.appium.java_client.remote.AppiumCommandExecutor.createSession(AppiumCommandExecutor.java:176)
at io.appium.java_client.remote.AppiumCommandExecutor.execute(AppiumCommandExecutor.java:237)
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:518)
at io.appium.java_client.AppiumDriver.startSession(AppiumDriver.java:268)
at org.openqa.selenium.remote.RemoteWebDriver.(RemoteWebDriver.java:161)
at io.appium.java_client.AppiumDriver.(AppiumDriver.java:90)
at io.appium.java_client.AppiumDriver.(AppiumDriver.java:102)
at io.appium.java_client.android.AndroidDriver.(AndroidDriver.java:109)
at Emai.LogIn.main(LogIn.java:28)