I faced with similar issue, but I got “UnsupportedCommandException performTouchAction” when tried to use perform() method from TouchAction, after investigation found problem in passing HttpCommandExecutor as a parameter to AndroidDriver constructor when initialize driver.
I used HttpCommandExecutor for sending key events, so I removed it from constructor and started using pressKeyCode() method from AndroidDriver. Probably it will help someone.