- Add ability to set multiple settings. [#1409](https://github.com/appium/java-client/pull/1409)
- Support to execute Chrome DevTools Protocol commands against Android Chrome browser session. [#1375](https://github.com/appium/java-client/pull/1375)
- Add new upload options i.e withHeaders, withFormFields and withFileFieldName. [#1342](https://github.com/appium/java-client/pull/1342)
- Add AndroidOptions and iOSOptions. [#1331](https://github.com/appium/java-client/pull/1331)
- Add idempotency key to session creation requests. [#1327](https://github.com/appium/java-client/pull/1327)
- Add support for Android capability types: `buildToolsVersion`, `enforceAppInstall`, `ensureWebviewsHavePages`, `webviewDevtoolsPort`, and `remoteAppsCacheLimit`. [#1326](https://github.com/appium/java-client/pull/1326)
- Added OTHER_APPS and PRINT_PAGE_SOURCE_ON_FIND_FAILURE Mobile Capability Types. [#1323](https://github.com/appium/java-client/pull/1323)
- Make settings available for all AppiumDriver instances. [#1318](https://github.com/appium/java-client/pull/1318)
- Add wrappers for the Windows screen recorder. [#1313](https://github.com/appium/java-client/pull/1313)