Hey, some months ago there were some people (including me) who started thinking about and application framework (most informations are available on http://www.freesmartphone.org/index.php/UMAF). After some weeks the discussion ends cause of no visible results and reason that we discussed about many high level stuff and not about the basics.
Currently I want to restart working on such a mobile application framework. Basically there should two things I want to manage with such a framework * handle the life-cycle of applications (lifecycle as android defines it for its applications http://developer.android.com/guide/topics/fundamentals.html#lcycles) * give the user an infrastructure to create easily application without carying about how he has 'to place a single button on the screen' through creating basic widgets e.g. a std. Calendar Widget which has the option to enter a new event and in every application it looks the same way I looked at the lifecycle of the activities (thats the name android uses for its visible applications). An activity has seven states: onCreate, onStart, onRestart, onResume, onPause, onStop and onDestroy. If an applications got created it enters the onCreate state, if it was started it enters the onStart state and so on. Through such states we can easily control the behaiviour of our applications with a daemon when different events like an incomming call occurs. So tell the application to Suspend when a call occurs or another application gets started by the user. Another thing we can is, we can control how many applications we run on our system. If we notice that five applications are running and a sixed gets started our daemon could suspend the other ones or stop the least used application. Another point I want to focus with the framework is the separation between the view of an application and the data handling. The visible part of an application should always be flexible and fast to provide the user a good user experience. The handling of the date or other operation should be done in the background without being noticed by the user. For that the framework should provide some functionalities to get this easily realized by an application. So I have spoken much about the thought I have about such a application framework, but what about the implementation? For the lifecylce and application handling I would implement this by using dbus. There is some daemon on which each application can register an handle. Through this handle the application gets informed about state changes. Each handle has a unique name so each application can be identified by the daemon and can even accessed by other system services. If the daemon deceides on a state change for the application the daemon emits an dbus signal to inform the application about that. For background services I am even thinking about to implement this with dbus. If you create your application you create a plugin for the background service infrastructure which is managed by the application framework daemon. So the daemon can deceide when to stop or to kill a background service or how much power it gots. The communication between the application and the background service should be self defined by the user, but easily to create so the user should not concentrate to much on dbus things. I setup some initial git repository for my work on this application framework on http://git.gravedo.de/?p=aurora.git;a=summary Currently its only a skeleton for my further work, nothing implemented even because I am currently playing with this ideas and have no concrete plans how to implement this. Tell me what do you think about my thoughts. Do you have the same in mind or maybe something different? regards, morphis _______________________________________________ smartphones-standards mailing list smartphones-standards@linuxtogo.org http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/smartphones-standards