Can app serve as an accepted abbreviation for application in formal contexts? Is there some context where app is more accepted (for example, when talking about mobile applications)?
Your intuition is right. Nowadays, when people say "app" they mean "mobile application."
If you want to talk about an application that doesn't run on a tablet/phone, you can say something is a "Windows app". If you don't want to specify the operating system except to say that it's not a mobile application, just go with "application" or "program".
I've worked as a professional software developer since 1994. Within most software development teams I've worked in, 'app' was simply used as an abbreviation of 'application', regardless of the target platform. It seems that it's only really since the advent of the iPhone that it's become a more formal term specifically for mobile applications. Within software development, we still use it to refer to any application.
Apple and Google talk about "Apps" even in their formal docs, because they've made a conscious choice to adopt that into their company lexicon. Is that appropriate for all companies? I think the short answer is: it depends. Consider the domain (mobile apps versus windows apps) and the tech-savvy sophistication of the audience.
The term “app” is no more esoteric and getting saturated in the mobile development world and also widely recognized by end users.
Oxford English Dictionary records “app” as a computing term related to a mobile device ( +1 Barrie)
Gartner says: “Apps and applications are two very different expressions of software. The defining characteristic of an app is its reduced functional presence. Apps do less than applications. That is their goal."
Apple, Google and Facebook use the term “App” in their formal docs (+1 Lynn)and communication ( For example, Apple and Google employ the usage“App” in their User/Human Interface Guidelines).
The term "app" has become very popular, and in 2010 was listed as "Word of the Year" by the American Dialect Society."