Vijay
Vijay

Reputation: 93

A new session could not be created. (Original error: Command failed: ) Appium error

I am doing automation testing for Android device . In Emulator it's working fine . While connecting to device it's creating & installing a unlock.apk to android device . After that following error is comingenter image description here

i have set below for configuration DesiredCapabilities capabilities = DesiredCapabilities.android(); capabilities.setCapability(MobileCapabilityType.BROWSER_NAME, "");

       capabilities.setCapability("deviceName", "Moto C Plus");
    //capabilities.setCapability("deviceName", "ZZ22cdddP9");
    //  capabilities.setCapability("udid", "ZZ22cdddP9");
    capabilities.setCapability("platformVersion", "7.0");
    capabilities.setCapability("platformName", "Android");
    capabilities.setCapability("browserName", "chrome");
    //capabilities.setCapability("Device Id", "xxxxxxxx");
          capabilities.setCapability("app", "D:\\abc.apk");
    capabilities.setCapability("appPackage", "com.s.abc"); 
    capabilities.setCapability("appActivity", "com.s.sn");

Upvotes: 2

Views: 245

Answers (3)

Vijay
Vijay

Reputation: 93

Thanks Shiv & Vinod ,

Finally resolved those issue .. i was putting wrong activity name . so it was getting shut . By setting below line in capability it's working fine capabilities.setCapability("appActivity", "com.example.main.LaunchActivity");

capabilities.setCapability("deviceName", "ZZ22cdddP9");
   capabilities.setCapability("platformVersion", "7.0");
   capabilities.setCapability("platformName", "Android");
   capabilities.setCapability("app", "D:\\abc.apk");
   capabilities.setCapability("appPackage", "com.s.abc"); 
   capabilities.setCapability("appActivity", "com.example.main.LaunchActivity");

Upvotes: 1

Shiv
Shiv

Reputation: 505

Set following capabilities only and try to start appium :
Note : deviceName should be name which we will get using "adb devices" command.

   capabilities.setCapability("deviceName", "ZZ22cdddP9");
   capabilities.setCapability("platformVersion", "7.0");
   capabilities.setCapability("platformName", "Android");
   capabilities.setCapability("app", "D:\\abc.apk");
   capabilities.setCapability("appPackage", "com.s.abc"); 
   capabilities.setCapability("appActivity", "com.s.sn");

Upvotes: 0

Vinod
Vinod

Reputation: 976

Add below code before you initialize your appium driver.

String cmd = "adb shell getprop ro.build.version.release";

String osVersion=executeCommand(cmd);

if(osVersion.contains("7"))
{
    //uninstall io.appium.settings
    cmd="adb uninstall  io.appium.settings";
    executeCommand(cmd);

    //uninstall io.appium.unlock
    cmd="adb uninstall  io.appium.unlock";
    executeCommand(cmd);

}

public String executeCommand(String cmd)
{
    String commandresponse="";
    try
    {
        Runtime run = Runtime.getRuntime();
        Process proc=run.exec(cmd);
        BufferedReader stdInput = new BufferedReader(new 
                InputStreamReader(proc.getInputStream()));

    BufferedReader stdError = new BufferedReader(new 
            InputStreamReader(proc.getErrorStream()));

    String response=null;
    while ((response = stdInput.readLine()) != null) 
    {
        if(response.length()>0)
        {
            commandresponse=commandresponse+response;
        }
    }

    while ((response = stdError.readLine()) != null) 
    {
        commandresponse=commandresponse+response;

    }
}
catch(Exception e)
{
    e.printStackTrace();
}
//System.out.println(commandresponse);
return commandresponse;

}

Upvotes: 0

Related Questions