1. It's open source which supports range of languages, operating systems and languages. Well suited for Android and IOS mobile automation. Supports all kinds of apps, which makes it flexible and robust mobile testing tool 2. It is less appropriate where we need intercept network call to verify the API calls. Extensive coding experience is required to work Appium
I would like to give 9/10 rating to Appium because of it can easily integrate with popular frameworks and CI/CD tools, as well as it is reliable, flexible and easy to use. The setup can bit complex in initial step, but once on configured it's very easy to use and enables stable and scalable mobile automation for real and cloud devices.
If you're an Apple developer, you use Xcode. It's practically a forced necessity. For system testing though, it doesn't have to be. You can have your development team focus on unit and integration tests in their platform and another team automate acceptance tests with a language they are more familiar with.
Cypress.io is an alternative end-to-end test framework that does NOT use Selenium. Since I've only evaluated this tool as a possible solution, my estimation of its performance against Protractor is incomplete. However, if you and your team are looking for automation solutions outside of the Selenium scope, then Cypress.io may be a good fit given the problems you're trying to solve.