Android is the most modern application platform PDF Print E-mail

Exceptionally, in this blog entry I intend to talk about philosophy instead of hard software code. There are so many mobile application platforms and some of them like Symbian is pretty widespread. So why the excitement about one more platform which is in addition Java-based - there are a number of Java-based mobile platform starting with J2ME, OSGi R4, Limo and so on. Everybody has one's own answer and I think the Android Developer Challenge is a great factor. However, one paper I wrote about 2 years ago (shameless self-advertisement ...) comes to my mind constantly when I work with Android. In that paper I analyzed mobile middleware patterns (get the presentation for free, the paper unfortunately costs money. Write an This e-mail address is being protected from spambots. You need JavaScript enabled to view it and I send you a copy). There are 4 major patterns in mobile middleware (quote from the introduction of the paper).



Context-awareness

Traditional middleware is strictly layered meaning that it shields the applications from events concerning the lower level of the stack. For example if a remote invocation cannot be sent, the middleware layer may retry and eventually send a general error to the service user. Context-awareness means that there is no such shielding and the application is aware of the environment situation. Context changes are inherently asynchronous and are often delivered in the form of events. It is important to note that only the application can decide what context events are important and how to handle them. For example when a business application notices that its cheap and fast proximity connection is no longer available, the application can revert using slower and more expensive cellular connection. The same option may not be available for a game which is not allowed to use more costly bearer and in case of disconnection, an error should be sent to the end user or the application may switch to standalone mode.

Reflection

Reflection generally means that the program is able to make computations on its own structure during its execution (retrieve the current structure, evaluate the structure against environmental constraints then update the structure if necessary). Reflection is a crucial technique in mobile computing, especially, if the application is expected to be context-aware. Even moderate number of context states yield large number of context state combinations. If the application and the middleware are built in monolithic fashion, the application and middleware code must be prepared for all possible context state combinations which quickly becomes intractable. Also, the memory footprint of the monolithic middleware increases with each context state combination handled. In order to keep the footprint minimal and the design of the system clear, the middleware needs to be decomposed into a collection of smaller components. The application chooses just the components it needs and composes the middleware that serves the application the best. In case of context changes, the application evaluates the context transition and possibly changes the instantiated components and/or their configuration.

Off-line access

Disconnection is an inherent property of mobile computing. The reason for disconnection can be physical (no coverage) or social (mobile access is too expensive or not acceptable in the given situation). In order to provide acceptable user experience, operation in disconnected mode must be available. The key technology to achieve disconnected operation is the relocation of relevant data and code to the mobile device. Data relocation can be achieved by pretty established data synchronization techniques.

Asynchronous communication

Networked computing is dominated by solutions following Remote Procedure Call (RPC) semantics. RPC mimics the procedure call on a single processor, the calling procedure is suspended for the duration of the call and execution continues in the called procedure. Therefore RPC is inherently synchronous. Mobile transport networks are characterized by long and variable delays and frequent transmission errors. In this environment communication must be asynchronous ( event-based or messagebased terms are also used for the same concept). This affects the communication semantics the middleware uses. Instead of procedure call semantics, communicationrelated events are delivered to the application.

The paper goes on and designs such a framework for OSGi but that's history. So you can imagine my surprise when I started to work with Android and saw the intent and the related service framework that realizes context-awareness and reflection. The decomposition of the Android application into intent handler activities implement one key element of the reflective vision - standalone components that can be reconnected as the environmental situation demands it - and the intent delivery framework is perfectly suitable for context-aware computing. The intent matching logic in the current Android implementation is pretty simple (exact match of action and categories) but it takes not much imagination to extend it with more sophisticated matching logic if the target platform's capabilities (e.g. power consumption, processor speed) allow it. Intent delivery is slow but service binding based on intent matching - so that the service is selected by an intent and then the selected service is called repeatedly - is sufficiently fast.

In addition, off-line operation - synchronizable content providers - are part of the platform. The only key element Android misses is a comprehensive asynchronous communication framework like queues. The XMPP service that has just been removed can be such a service.

Android is not just another Java-based mobile platform but actually the only platform that adopts the results of the mobile middleware research therefore it is interesting in itself, without the Android Developer Challenge and its prizes. Its fate depends mostly on business factors but it is still important to note that the Android platform's architecture is several steps ahead of the competing platforms.

Now back to coding. :-)

 

Source: http://mylifewithandroid.blogspot.com/2008/02/android-is-most-modern-application.html

Comments (14)Add Comment
...
written by mbt , June 18, 2010
"list" is a reference to an object implementing the List interface. Each element in this list is an object implementing the Map
report abuse
vote down
vote up
Votes: +0
a very nice website
written by glass beads , June 25, 2010
his site is amazing. Very well developed with great information.
Thanks for a wonderful experience.
report abuse
vote down
vote up
Votes: +0
...
written by coach outlet , June 28, 2010
Thanks for a great time visiting your site. It's really a pleasure knowing a site like this packed with great information.
report abuse
vote down
vote up
Votes: +0
a very nice website
written by chanel bags , June 29, 2010
his site is amazing. Very well developed with great information.
Thanks for a wonderful experience.
report abuse
vote down
vote up
Votes: +0
shi
written by fiwedding , June 30, 2010
contests administered by SUN, ACM, and IBM. He also had co-authored U.S.
report abuse
vote down
vote up
Votes: +0
air max 90
written by air max 90 , July 14, 2010
Thanks for sharing the useful information with me.
[b]wholesale christian louboutin[/b]
[b]cheap mlb jerseys[/b]
report abuse
vote down
vote up
Votes: +0
GHD straighteners
written by GHD straighteners , July 22, 2010
Enjoyed every bit of your blog.Great.
report abuse
vote down
vote up
Votes: +0
NFL jerseys
written by NFL jerseys , July 22, 2010
I am always searching online for articles that can help me get further ahead. Thanks a million!
report abuse
vote down
vote up
Votes: +0
MBT shoes
written by MBT shoes , July 22, 2010
Thanks for this! I’ve been looking all over the internet for it.
report abuse
vote down
vote up
Votes: +0
UGG boots
written by UGG boots , July 22, 2010
Great thanks for sharing this article post.
report abuse
vote down
vote up
Votes: +0
ghd hair straighteners
written by ghd hair straighteners , July 24, 2010
[b]cheap ghd[/b]
[b]cheap mbt shoes[/b]
report abuse
vote down
vote up
Votes: +0
timberland mens roll top
written by timberland mens roll top , July 27, 2010
Here was someone immersed in a search for truth and beauty. Words had been cheap timberland boots treasured, words that were beautiful. And I felt as if the words timberland waterproof boots somehow delighted in being discovered, for they were obviously very generous to the as yet anonymous writer of the notes. And now this person was in turn learning the secret of sharing them. Beauty so shines when given away.
report abuse
vote down
vote up
Votes: +0
...
written by Abercrombie outlet , July 28, 2010
nfl kids jerseys
personalized nfl jerseys
throwback jersey
cheap nfl jerseys
nfl jersey
report abuse
vote down
vote up
Votes: +0
hollister clothing
written by hollister uk , July 29, 2010
like the toad, ugly and venomous, And this our life exempt from public haunt Finds tongues in ugg argyle knit sale trees, books in the running.
report abuse
vote down
vote up
Votes: +0

Write comment
quote
bold
italicize
underline
strike
url
image
quote
quote
smile
wink
laugh
grin
angry
sad
shocked
cool
tongue
kiss
cry
smaller | bigger

security code
Write the displayed characters


busy
 

 

This domain is for sale! Please contact me via contact page!