Lack of intents is also a serious problem, apps have to specifically support sharing to each source.
A related issue is the lack of system accounts. One has to log in to each app separately, even if many of them use the same account.
I have witnessed this confusion with users, and it really hurts the platform in a lot of cases, IMO.
I can select one to be the default "always", but this doesn't work well either. If there are five applications that can receive a particular intent, my selection of "always" will be lost every single time that ANY of those five applications are updated. So, in practice, my "Always" selection typically only lasts a couple of weeks.
There HAS to be a better way.
Intent intent = new Intent(Intent.ACTION_VIEW); intent.setPackage("com.adobe.reader");
Would open the adobe pdf reader for instance.
That said this is hardly desirable from a users perspective.