uiautomator allows to automate features you need.
It can access system features and pre-installed apps.
The challenges include:
1) only one language for development – Java; 2) and it works only on Android 4.0 or later.
P.S. Calabash and Robotium will not help to automate third party apps. I've used them both.