When choosing between generating code for replication-based synchronization or message-based synchronization, keep the following in mind:
A mobile application can be either message-based or replication-based, but not both at the same time. A package of mobile business objects can be deployed as either message-based or replication-based.
Replication-based synchronization
- Supported on BlackBerry and Windows Mobile devices.
- Data flow follows an upload/download pattern.
- Data is synchronous (supports background synchronization).
- Uses the "poke-pull" model of push, where a notification is pushed to the device (poke), and the device fetches the content (pull).
- Best for mostly disconnected mode.
Message-based synchronization
- Supported on iOS and Windows Mobile devices.
- Uses an asynchronous messaging protocol.
- Provides reliable messaging between the device and the server.
- Provides fine-grained synchronization (synchronization is provided at the data level—each process communicates only with the process it depends on).
- Best for always available mode.