> Sugar has a similar mechanism. From the Low-level Activity API docs:
>
> org.laptop.Activity.SetActive(b: active)
> Activate or passivate an activity. This is sent when switching activities, 
> there is only one active activity at a time, all others are passive. A 
> passive activity must immediately release resources like sound, camera etc. 
> Also it should prepare for being killed without warning at any time in the 
> future (see OOM) by auto-saving to the datastore.
>
> The issue is that it's hard to estimate how many Sugar activities actually do 
> this, because until now they usually have not been killed (*). Might be an 
> interesting test - just randomly kill activities from Terminal and see if 
> they resume correctly ... 
>
> Maybe "good" activities could "volunteer" to be shut down first. Or "bad" 
> activities would have to "beg" to live a little longer. Might just take an 
> entry in the activity.info file.
>   

It will not work, because the application startup time is horrible on 
the XO. The Dalvik VM goes a loooong way to have fast application 
startup and to share most of the memory among applications (the Zygote 
process does this). Actually that was the exact thing I tried to do with 
the Python VM. Just at the exact time when I started to hack Python I 
have seen the Google I/O video about the Dalvik VM and thought that 
duplicating that work would have been a waste of time. So if you wanna 
fix the Python VM, good luck, but you know it is already been coded... 
:) Without fast activity startup, killing activities will be a horrible 
user experience. Maybe not that bad as a totally unresponsive XO though.


> (*) Apple seems to have foreseen this "developer psychology" issue and 
> actually killed all apps in the first three iterations of its iOS. So apps 
> had to implement this state saving if the user was to be able to continue 
> after leaving an app. Would be interesting to know how many Android apps 
> actually implement it.
>   

All of them. If an Android application does not implement it correctly 
then there will be big problems while switching apps and while 
navigating among application screens.

_______________________________________________
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel

Reply via email to