Pimlical Android Help
Synchronizing to Other Devices
Pimlical supports two types of calendars:
- Local Calendar.
This calendar is stored on the internal storage of the Android device
and can only be synced to other devices using Pimlical's syncing
software (DirectSync and/or AutoSync).
- Android Calendars.
These calendars are stored in the Android Calendar database on the
Android device and are synced to Google Calendar via Android's Google
Calendar Sync routines
As
a user, you can choose to use either one or both types of calendar. The
local calendar is always more secure and more private, since you have
total control over where the data is displayed and synced to. The
Android calendars provide a simpler way of sharing calendars with other
devices connected to the internet (cloud-based servers), but as a user
you have less control over the information as it is stored on Google's
servers and is synced using Google's software. With AutoSync, the local
calendar can now be shared easily with multiple devices/desktops via a
cloud-based server, but many users may still prefer to continue using
DirectSync which provides an off-cloud sync solution and a higher
degree of security.
In
general, Pimlical/Android and Pimlical/Desktop should match on the
MAJOR version (i.e. if you are using V-4.1.x of P/A, you should be
using V-4.x of P/D).
Contacts and Memos
Pimlical
also supports a local contacts and a local memos database. These
databases can be synced to other devices using AutoSync or DirectSync.
Pimlical can also utilize the built-in Android contacts database for
linking purposes. The Android contacts database is completely separate
from Pimlical's contacts database and is synced to Gmail contacts via
Google's sync software.
Android Calendar Sync
If
Pimlical is using Android calendars (you select calendars in menu |
Select Calendars), these calendars are continuously synced by Google's
Android Sync software. This sync takes place at regular intervals (the
exact frequency is dependent on many variables). There is a menu
command in Pimlical (menu | Sync Now) which tells Google's Sync software to immediately proceed with syncing the database (and that is all it does).
Pimlical does not automatically refresh its calendar unless you set the preference: GoogleRefreshInterval to a value other than 0. If 0, you will need to manually refresh the calendar (menu | Refresh Calendar)
in order to see the updated information. If the preference is set to a
non-zero value, then that specifies the interval between automatic
refreshes of the calendar. If you set that preference to -1, Pimlical will refresh the calendar
immediately on any change to the native Android calendar provided that
it gets properly notified (not all versions/implementations of the
Android OS include this notification feature).
Local Calendar, Contacts, Memos Sync
If
Pimlical is using its own local databases, you can sync those databases to a desktop running Pimlical using DirectSync, or to any device/desktop running Pimlical Calendar using AutoSync.
DirectSync
is the original sync method and still provides the highest degree of
security as you can sync from an Android device to the desktop without
ever going through any cloud-based server. You can sync any number of
Android devices to a desktop, but you can not use DirectSync to sync
from desktop to desktop or Android device directly to another Android
device (for that, you will need to use AutoSync). DirectSync does
require that both devices be physically adjacent (unless using a WebDAV
server) and does require interaction on both devices.
Unless
security/safety is an overriding consideration, and if using a
cloud-based server is acceptable (and it will be for the majority of
users), then the best option is the newer AutoSync as it is more flexible and can operate automatically in the background.DirectSync
DirectSync supports three basic sync methods:
- Local HTTP Sync
- this is the default and recommended method. The only setup needed is
to locate the desktop IP Address (displayed in menu | About and in the
DirectSync dialog) and to insert that IP address into
Pimlical/Android's preference: HttpAddressesForSync. Pimlical can then sync the two devices over a local network (usually a local WiFi network).
- Path to P/A as Folder
- this method assumes that the Android device is somehow accessible as
a desktop device. For example, if your Android device supports USB Mass
Storage (this is not the same as MTP) - then when you connect the
device it will typically show up as a device in the desktop's operating
system and can be accessed directly. This method can also be used with
a WebDAV server on the Android device (there are many third party
WebDAV servers available for the Android OS), since in that case, the
Android device ends up being mapped into the desktop operating system
as a device. It can also be used to manually sync a device (copy the
Pimlical folder on the device to the desktop, sync it there, then copy
the Pimlical folder back to the device.
- USB MTP
- some Android devices support an MTP type connection when the Android
device is connected by a USB cable. Not all devices support MTP and of
those that do, not all of them are compatible.
For further information on syncing, see the document on DirectSync (on the desktop: menu | Help | Using DirectSync to Android..., or on the web: http://www.PimlicoSoftware.com/PimlicalDirectSync.htm)..
AutoSync
AutoSync
was introduced in V-3.5.1 and is an alternative sync method to
DirectSync which uses a cloud-based server. Any number of devices
(desktop or Android) that can connect to the same cloud-based account
can then sync with each other. In its initial release, AutoSync
supports Dropbox as well as a directly accessible network server that
maps onto the desktop's operating system (the latter would not likely
be suitable for syncing Android devices). So AutoSync can be used to
sync from desktop to desktop as well as from Android to Android
(DirectSync can only sync between desktop and Android).
To use
AutoSync, you need to set up a Dropbox account. Free Dropbox accounts
are more than suitable for accomodating the highly compact Pimlical
databases (the average database is not likely to be much larger than
2-3Mb at most)..
Once
you have set up a Dropbox account you can sync any Pimlical databases
to the server (or you can overwrite the server, or have the server
overwrite the device, depending on a preference settings.
There is a new issue with AutoSync, because Dropbox now requires that
you log in for every sync. Previously, the login credentials were
remembered and could be re-used. It might be that you have an older set
of login credentials that have been "grandfathered in" and in that
case, you may still be able to sync with Dropbox without logging in.
Otherwise, you will have to log in every time you want to sync, and may
not be able to use the AutoSyncFrequency preference to sync automatically.
To
enable AutoSync (presuming you can use it), set the preference AutoSyncFrequency to the frequency
with which you want to sync. Do not make this too short, or it will
interfere with your use of Pimlical as while a database is being
synced, you cannot modify it. A reasonable, smallest value might be
something like 10-15 minutes. Syncing with dropbox is not very fast, so
if you have a really large local calendar, you may want to split it
into a current calendar and an archive calendar for efficiency.
See
the specific documentation on AutoSync for more information on the
preferences available for syncing (such as only syncing items after a
cutoff date, or only syncing specific categories.
If you have a subscription, you can set the preference: AlwaysResetBeforeAutoSync to true, so that it performs the reset automatically when you invoke autosync. If
there is still an issue using that preference, you might need to extend
the delay time before syncing, which you can do by adjusting the
preference: AutoSyncDelayAfterReset to a slightly larger value.
Otherwise, if you do not have a subscripttion, you will have to use Menu | Debug | Reset AutoSync before every manual invocation of the sync.