WebDriverException: Message: A new session could not be created.


Initially, I had set desired capabilities to:

desired_caps['platformName'] = 'Android'
desired_caps['platformVersion'] = '4.4'
desired_caps['deviceName'] = 'Moto E'
desired_caps['appPackage'] = 'atpwta.live'
desired_caps['appActivity'] = '.activity.Main'

After reading the appium docs I solved the issue by adding the following line.

desired_caps['appWaitActivity']= '.activity.root.TournamentList'

So why did appWaitActivity help?

A simplified (but technically incorrect) way of understanding this error is that Appium was waiting for a screen name .activity.Main and timed out. The error helpfully tells you the current active screen is .activity.root.TournamentList. The desired capability appWaitActivity tells Appium what Android activity it should wait for. If you see a similar error, set your appWaitActivity to match the current activity in the error message.