Get around an app that won't work on rooted device My bank's app has stopped working after an update. Trying to open the app gets the error "The device is rooted. For security reasons the application cannot be run from a rooted device". Then the app immediately closes.

I'm not really sure how there's security issues from being rooted. Especially compared to accessing the regular website from a desktop computer, which has no such kind of check. However, I don't really care. It's my device. So how can I get around this restriction (without unrooting my phone)?
UPDATE 2 - 6/21/2017: Most all of the below methods no longer work, especially on devices with Lollipop or higher Android. Currently the only effective method of hiding root access is using Magisk to root the device and use Magisk Manager to enable the Magisk Hide module and hide root from the app in question. Since this is an old question and I am just updating an answer, here is an article describing how to do it and below is a pretty rough guide to doing it. 

Summary of steps: 


Remove old root method complete, this may mean you need to restore
stock or reflash your ROM. Some ROMs have root built in, so check
with your ROM maintainer/developer.
Flash the Magisk installer ZIP using TWRP or other custom recovery
Download and install Magisk Manager
Swipe from left and go to Settings and enable Magisk Hide
Press Back and select Magisk Hide
Scroll through the Magisk Hide menu and select the applications you
wish to hide root from


Your app should no longer detect that you have root. 



Old answer - May still be applicable to devices with KitKat and previous Android versions 

UPDATE - 9/2016: Most of the methods below will now fail since Google has updates SafetyNet API in how it detects root and modifications to a device. The SafetyNet API is a mandatory part of Google Play Services that auto updates itself regardless of your settings, and many apps are now using this to detect root or modified systems. In fact, in Android 7.x devices, an otherwise stock device with merely an unlocked bootloader can fail the SafetyNet check. More information on SafetyNet API can be found here. 

RootCloak will work with most applications to hide root, it is an Xposed module, or RootCloak Plus which is a stand-alone app.

The reason banking and other financial apps don't work on a rooted device is for the potential of private information being obtained by other apps or users with root permissions. Like it or not, there is no denying that having a rooted devices can potentially have security and privacy concerns, even if only in theory. Suhide by Chainfire is another great solution.