Deprecated youiengine by TikhomirovSergey · Pull Request #652 · appium/java-client

Change list

  • all the content of the io.appium.java_client.youiengine package was marked as Deprecated
  • update of the com.google.code.gson:gson to v2.8.1

Types of changes

  • No changes in production code.
  • Bugfix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)

Details

This package was added at #429. It was accepted due to previous implementation was not flexible and it did not allowed user to use their own commands/JSONWP protocol extensions. Now AppiumDriver is not abstract and it can be used across supported platfoms.

Please take a look at the following sample:

...
import io.appium.java_client.AppiumDriver;
import io.appium.java_client.android.Activity;
import io.appium.java_client.android.AndroidElement;
...

    private static AppiumDriver<AndroidElement> driver;
    private StartsActivity startsActivity;

        ...
        DesiredCapabilities capabilities = new DesiredCapabilities();
        ...
        driver = new AppiumDriver<>(...);

        ...
        startsActivity = new StartsActivity() {
            @Override
            public Response execute(String driverCommand, Map<String, ?> parameters) {
                return driver.execute(driverCommand, parameters);
            }

            @Override
            public Response execute(String driverCommand) {
                return driver.execute(driverCommand);
            }
        };
        Activity activity = new Activity("io.appium.android.apis", ".ApiDemos");
        startsActivity.startActivity(activity);

Also now it allows end user to extend command repository the following way:

MobileCommand.commandRepository.put("someCommand", new AppiumCommandInfo("someUrl", HttpMethod.POST));

Also I was motivated to remove this package because there is no activity/development.