I know this is not really relevant to class or anything else like that, but I’ve had a number of customers at work and friends come up to me and ask me “why is my phone so slow”. I could go into a detailed explanation about how the apps always have to get processed through a vm because all the code is java based and how the vm interfaces with the dalvik cache leaving local copies of files for the apps to process. The bottom line is that it’s all technology. Android phones are like computers from the 2002-2003 era. They’re not meant to be running multiple simulataneous applications at the same time.
The other thing is that most android apps are developed in Java. Java gets its portability because it uses a virtual layer to interface with the hardware which causes a delay in the time that the user does an action and the time that the device responds to that action.
Another point to consider is that mobile platforms have a limited amount of space. The more storage that is in use, the longer it takes the device to process through it.
Some people might argue “what about dual core phones like the Atrix?” The truth of the matter is that multi-core enhances multitasking, not speeds. There are very few computer applications that take advantage of parallel processing because its simply difficult to implement correctly. There are next to no apps on phones that implement parallel processing because multi-core mobile devices are very new.
Bottom line: your phone gets slower with the more apps you put on it. Youb want it go go faster? Look through the apps you have installed and take some off–better yet! Factory reset. Problem solved. Don’t like it? Deal with it.