Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Appium 1.5 support #302

Closed
romainlouvet opened this issue Jan 22, 2016 · 16 comments
Closed

Appium 1.5 support #302

romainlouvet opened this issue Jan 22, 2016 · 16 comments

Comments

@romainlouvet
Copy link
Contributor

Appium version : 1.5.0-beta11
Java-client version : 3.3.0

When i try to execute command : driver.removeApp("fr.****");

-> Exception
Parameters were incorrect. We wanted {"required":[["appId"],["bundleId"]]} and you sent ["bundleId"]

@romainlouvet romainlouvet changed the title Appuie 1.5 support Appuim 1.5 support Jan 22, 2016
@romainlouvet romainlouvet changed the title Appuim 1.5 support Appium 1.5 support Jan 22, 2016
@imurchie
Copy link
Contributor

If you update the mobile-json-wire-protocol package to the latest (1.2.0) this ought to be fixed.

@TikhomirovSergey
Copy link
Contributor

Related client and server bugs will be mentioned here

@TikhomirovSergey
Copy link
Contributor

It is finished.

@Fanch-
Copy link

Fanch- commented Mar 7, 2016

Hello,

It seems the AndroidMobileCapabilityType.OPTIONAL_INTENT_ARGUMENTS isn't working anymore.

Previously (client 3.3/server 1.4.16) when it worked -sending an extra arg- :

bash
info: [debug] executing cmd: adb -s 4300e98bd23e11af shell "am start -S -a android.intent.action.MAIN -c android.intent.category.LAUNCHER -f 0x10200000 -n fr.leboncoin.delivery.debug/fr.leboncoin.ui.activities.SwitcherActivity -e env qa0"


Now : 

``` bash```
[debug] [ADB] Running adb with args: ["-P",5037,"-s","4300e98bd23e11af","shell","am","start","-n","fr.leboncoin.delivery.debug/fr.leboncoin.ui.activities.SwitcherActivity","-S","-a","android.intent.action.MAIN","-c","android.intent.category.LAUNCHER","-f","0x10200000","-e env qa0"]

Could it be a quote issue? We lost the adb command line information du to these list args.

Also, why does keystorePassword require a boolean?

bash
"The desiredCapabilities object was not valid for the following reason(s): keystorePassword must be of type boolean."


It was previously a String, like keyPassword.

@romainlouvet
Copy link
Contributor Author

Appium version : 1.5.0
Java-client version : 3.4.0

@TikhomirovSergey
When i try to execute command : driver.removeApp("fr.****");
[HTTP] --> POST /wd/hub/session/a939f1f2-742c-4217-b106-0c529966e23c/appium/device/remove_app [MJSONWP] Calling AppiumDriver.removeApp() with args: ["fr.leboncoin.Leboncoin","a939f1f2-742c-4217-b106-0c529966e23c"] [debug] [iOS] Executing iOS command 'removeApp' [HTTP] <-- POST /wd/hub/session/a939f1f2-742c-4217-b106-0c529966e23c/appium/device/remove_app 501 3

org.openqa.selenium.WebDriverException: Method has not yet been implemented (WARNING: The server did not provide any stacktrace information)

@SrinivasanTarget
Copy link
Member

@romainlouvet Can you please reopen this issue? Its a valid bug.

@TikhomirovSergey FYI - https://gist.github.com/SrinivasanTarget/f724dd986701f029bdf4

@imurchie Could be a possible bug in server side?

@romainlouvet
Copy link
Contributor Author

@SrinivasanTarget I can't reopen :/

@SrinivasanTarget
Copy link
Member

OK will raise a new one @romainlouvet

@imurchie
Copy link
Contributor

imurchie commented Mar 7, 2016

Yes, the keystorePassword cap ought to be a string. Fixing.

@imurchie
Copy link
Contributor

imurchie commented Mar 7, 2016

@Fanch- can you post the command used to use AndroidMobileCapabilityType.OPTIONAL_INTENT_ARGUMENTS? I think I see the issue but I want to get how to fix it straight.

@Fanch-
Copy link

Fanch- commented Mar 7, 2016

With the java-client :

Previously it was :

bash
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability("appPackage", ".debug");
capabilities.setCapability("appActivity", "
.SwitcherActivity");
capabilities.setCapability("appWaitActivity", "***.SplashScreenActivity");
capabilities.setCapability("optionalIntentArguments", "-e env " + getQaEnv());


Now : 

``` bash```
{....}
capabilities.setCapability(AndroidMobileCapabilityType.OPTIONAL_INTENT_ARGUMENTS, "-e env " + getQaEnv());

We have two apps : in the first one which is a sort of launcher-switcher-, we can send an extra argument to launch the second one on the right environment.

I can see with 3.4.0/1.5.0 it doesn't launch the SplashScreenActivity, so there is a problem with the adb command generated.

@imurchie
Copy link
Contributor

imurchie commented Mar 7, 2016

Ugh. Ok. I will try to come up with a general solution for this.

@Fanch-
Copy link

Fanch- commented Mar 7, 2016

I have added some precisions to my previous post :)

@imurchie
Copy link
Contributor

imurchie commented Mar 7, 2016

I don't know what that means.

@imurchie
Copy link
Contributor

imurchie commented Mar 7, 2016

keystorePassword issue fixed in appium-android-driver 1.6.15.

@Fanch-
Copy link

Fanch- commented Mar 30, 2016

And your commit appium/appium-adb@176a3f9 fixed the issue with optionalIntentArguments, thx.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants