There is the iiTimer made by Dan Cohen. It's $1.99 and is designed for iPhone and iPad. It provides a scramble based on which puzzle is chosen. The timer works like a StackMat, so you have to leave your finger(s) on the screen for a moment before the timer will start. It keeps track of averages of 5, 12, and 100. You can add penalties like +2. You can check out this video
of Dan Cohen demonstrating it for more information.
There is also the iiTimer Lite by Dan Cohen. It just has scrambles for the 3x3 and records averages of 5. It is free.
Badmephisto has an app that has 3x3 algorithms. It has the OLL, PLL, 2-look OLL, 2-look PLL, and beginner's method algorithms as well as a notation page. It is $0.99.
There is also the official Rubik's app for Apple and Blackberry devices. It is $2.99 and lets you solve the 2x2 through 5x5. Other features include picture cubes and timed mode. There is more information in the Rubik's app store
As a note, I don't have a smartphone and I haven't used any of these apps.