The problem is probably that the button is not on the screen yet when you try to press it.
The safest thing is to figure out the id of the button and then do:
performAction('wait_for_view_by_id', button_id)
performAction('press', 'button_id')
or on a higher level:
I wait for the view with id "button_id" to appear
I press "button_id"