Linked by Thom Holwerda on Sat 9th Oct 2010 10:09 UTC
Google Google's big Android chief Andy Rubin has given an interview to PC Magazine, in which he touches on some interesting topics. Sadly, PC Magazine didn't ask about the patent situation and why Google is seemingly letting its OEMs fend for themselves, but there's still a lot of other interesting stuff in there.
Thread beginning with comment 444662
To view parent comment, click here.
To read all comments associated with this story, please click here.
molnarcs
Member since:
2005-09-10

Yes, but can you still close an application stuck in a while(1) loop or something similar ? And suppose you're done with writing a message, check it in the "sent messages" folder of the messaging application, then do something else and forget about it. When you open the messaging applications 5 minutes later by tapping on the home screen icon, will you go back to the "sent messages" folder and be confused for a second, or to the main screen of the messaging application ? Third issue I have with not closing applications is that of memory leaks and other bugs that don't have a noticeable effect until the application has been running for a long time.


If it's running, it will probably show up in running apps and you can kill it from there. Another option is watchdog, which monitors the system for suspicious CPU usage and alerts you if there's a runaway app. Otherwise, Android kills applications as it needs resources. If I understand correctly, exiting an app via the back button quits it, exiting by pressing the home screen, suspends it. The neat thing is, if you suspend an app, its state will be saved. If there are enough resources on your system, you can return to it (without the need to start the app again, ie use CPU cycles). If it was killed (because you started up 20 more apps for instance) the app will be reloaded along with its state, ie you can continue from where you left it. Saving the state happens when you switch, not before it gets killed (so killing to free resources is instantaneous). Quite simple and elegant imho.

Switching from messaging works for me very well. If I'm typing a text message, then suddenly need to check something, I can quit either via the back button or the home button. When I return, I can continue from where I left off. I haven't tried this, but I think you can type several messages, then leave them and return to continue - my message list shows a draft label near the names of the people I was texting than switched to something else, meaning I have unfinished text message.

As to the security model, I agree completely. Froyo actually alerts the users of all permissions an app asks for. If a game asks permission to access your contact list, that's suspicious. Problem is us - the users. Since every app does this now, users can get used to clicking yes yes install without reading the list of permissions that app will have. This is true of me as well, I don't read them too carefully, though I don't install random apps, just the ones I need. And before installing, I always check what other users had to say about it, both on the Market (comments section) and AppBrainz (I use the latter to install apps).

I've seen badly coded apps on AppBrainz, for example this one photo app (with 50+ effects) that drained the battery after you seemingly quit it. And that's where Google oddly lacks a neat tool for testing. I mean there should be a comprehensive tool that catches misbehaving apps - this could be done automatically for each submitted app. Human intervention may be required to catch apps that need unreasonably permissions. Without the unreasonable censorship Apple sometimes exhibits of course.

EDIT: One more note about memory leaks you mention - those are not a problem. A metafor one developer used was swapping. Basically, you can think of running apps as buffer/cache on Linux - remember the unused memory is wasted memory mantra. Once Android starts to run out of memory, it swaps out these applications (kills them, while retaining their state). This results in always having enough memory. And when I say kill, it means kills brutally (like the kill command on linux). Somewhere in the article I linked they explain the Application Lifecycle very well..

Edited 2010-10-10 10:25 UTC

Reply Parent Score: 2