
HOME
stuff you never thought you wanted to know.
|
|
|
|
|
|
Programming mobile handheld devices.
Programming mobile handheld devices
written by Jon Berg <jon.berg|a|turtlemeat.com>
Synchronization
Data Synchronization is the process of making two data sets identical.
Synchronization is important in mobile devices both for update of data on the
mobile device and propagation of data created on the mobile device. This synchronization
is often between the mobile device and a database. The mobile device may not
want to have always on connectivity because a user may have to pay by the minute
he is connected. It is also likely that even if wireless networks are widely
available sometimes the user may be without network connection.
The Disconnected but Synchronized [2] is suggested as a good model for mobile
devices where there may be lack of network connection. In this model the client
can be on-line and offline at times, but still support synchronization. The
goal is to give the user an illusion of uninterrupted operations even when network
connection is lacking.
Synchronization done in applications most often involves synchronizing enterprise
data in a database.The major database vendors IBM, Orcale, Microsoft, Sybase/iAnywhere,
PointBase and others have their own synchronizing software that you can use
for their database. These solutions differ in how synchronization is done, what
programming language and platform are used, over what network protocols they
use, how security and conflict resolution are done. There is one problem with
all these proprietary solutions that they make it difficult for application
developers and device manufactures to support these. It can be difficult to
integrate synchronization between applications from different vendors.
SyncML
SyncML [12] is an open standard that defines a language for synchronization
of devices, applications and networks. To operate efficiently over wireless
networks the commands and data in SyncML messages are defined in WAP Binary
XML. SyncML do not dictate what transportation protocol that the messages are
transmitted over. This enables synchronization with SyncML over a variety of
protocols like HTTP, SMTP/POP3/IMAP, Bluetooth's OBEX and Infrared IrDA [13].
The corporations behind SyncML Ericsson, Nokia, IBM, Motorola, Lotus, Palm,
Symbian and other are working to make SyncML the standard method for doing synchronization
on handheld devices. If SyncML becomes the standard the benefits of SyncML for
application developers is that they do not need to support a wide range of synchronization
technologies. For device manufactures it will be a great benefit to only support
one standard since storage on devices are limited. For users it will be a benefit
with interoperability of many types of devices and data types that SyncML
will give.
The roles in SyncML are client and server. Most often the client initiates
the synchronization. The server can initiate the synchronization if it is an
always on network. Client/server refers to roles in the synchronization. Synchronization
with SyncML can be used in applications that synchronize between any sort of
device for example between to handheld devices or a handheld device and a traditional
stationary server.
Conflicts will happen in a system with synchronization. A conflict happens
when data is modified on both the server and the client. The synch server in
SyncML will normally resolve such conflicts according to a policy. The client
will then get a notification of the conflict and how it was resolved.
Google
Let Google Handle Email for your Domain Name
Page Rank banned by Google
Google's highest ranked web pages
SEO intelligent spam causes irrelevant search results
Google Sandbox
Google ranking factors
How to not give out page rank in web page links
Web Server Programming
Simple Java web server
Simple Python web server
Configuring Apache webserver with .htaccess file
Windows
Turn off the loginscreen in XP, after installing .NET .
Turn off xp login screen unread mail count
What is .NET
Web (webmastering)
Introduction to Cascading style sheets (CSS)
The value of Alexa traffic rank
HTML META tag, not a search engine optimization tool
Create a maintainable webpage with modularization
The www prefix in your domain name
What is RSS and cool things RSS can be used for
MySql backup and restore with phpMyAdmin
Mix Computer related text
Doing business (making money) with Information Technology
Business with Computer Science
Research in Computer Science
Current and future possibilities of Medical Informatics
Tasks that make sense to have automated
Programming handheld mobile devices (overview)
Security tips for the web surfer
Price and Capacity in computer hardware
Java RMI Tutorial.
Microsoft Word
Page numbering in Word
Numbering headers or outlines in Word
Create a List of Figures
Turn off the default collapsing menus in Word
Turtlmeat.com 2004-2008 ©
|