Do you see your account in Settings/Accounts?   Does it have contact syncing
enabled?

On Mon, Jan 31, 2011 at 2:44 PM, himanshu jain <[email protected]>wrote:

> @Dmitri
>
> thanks once again
>
> But why my SyncService not gets started by SyncManager on Device i
> dont know , and i explicitly call requestSync flow is not going inside
> onPerformSync.?
>
>
> thanks
>
> On Jan 31, 1:49 pm, Dmitri Plotnikov <[email protected]> wrote:
> > Sending requestSync to contentresolver is the right way to go if you want
> an
> > explicit button to request sync. This is what applications like Calendar
> and
> > Gmail do when you push the "Sync" button.  ContentProvider will also
> request
> > sync whenever there is a change in the data.
> >
> > You should query raw contacts that have the DIRTY flag set.  These are
> the
> > added, deleted or changed contacts.   Your sync adapter should reset this
> > flag after syncing up changes.  It also needs to physically remove
> deleted
> > contacts from the database.  In both cases it needs to supply the
> > CALLER_IS_SYNCADAPTER query parameter - otherwise the protocol won't
> work.
> >
> > Cheers,
> > - Dmitri
> >
> > On Mon, Jan 31, 2011 at 1:37 PM, himanshu jain <[email protected]
> >wrote:
> >
> >
> >
> >
> >
> >
> >
> > > @Dmitri
> >
> > > Thanks a lot for spending time to answer my questions at least some
> > > doubts are faded off.
> >
> > > 1) I understand to use own activity for editing and creating new
> > > contacts.
> >
> > > 2) Ok, if i avoid ContentObserver even i had that in mind might
> > > require something to be running in background which is bad agreed.
> >
> > > 3) But, there are two use cases first if there is a button that say
> > > sync now and i send request using requestSync() method will it start
> > > immediate sync via SyncManager or again it will depend upon
> > > SyncManager discretion?? if thats true i cannot start immediate
> > > Sync ??.
> >
> > >  Second use case how would i know if there is a change corresponding
> > > to my account in raw_contact utilizing best practice push
> > > notification ?? so that i can trigger syncing.
> >
> > > thanks Dimitri for your time and ideas
> >
> > > On Jan 30, 11:42 am, Dmitri Plotnikov <[email protected]> wrote:
> > > > Hi Himanshu,
> >
> > > > 1) SampleSyncAdapter is still a good source of inspiration.  It has
> some
> > > > issues and plan to have them fixed in the nearest future.
> >
> > > > 2) In releases of Android from Eclair through Gingerbread integrated
> > > editing
> > > > of 3rd party contacts is poorly supported.  The trick is to insert a
> data
> > > > row, "Edit in MyApp", which would take the user to your app and your
> app
> > > > would then provide an editor activity.  Also, there is no provision
> in
> > > the
> > > > Contacts UI for creating new contacts in 3rd party accounts.  We have
> > > fixed
> > > > those issues in Honeycomb.  Now you can specify two activities in
> your
> > > > metadata xml file: one for creating new contacts and one for editing
> > > > existing ones and voilĂ ! - you have seamless integration.  Of course,
> > > it's a
> > > > bit too soon to rely on Honeycomb as the dominant version of Android
> ;-)
> > >  So
> > > > for now you will need to either go with the described hack or only
> allow
> > > > creation/editing of contacts through your app.
> >
> > > > 3) Please consider an alternative to using content observers for a
> sync
> > > > adapter.  There are several reasons:
> >
> > > > - In order to receive notifications, your process will need to be
> running
> > > at
> > > > all times. Or it would have to have a broadcast receiver, which is
> very
> > > very
> > > > costly.
> > > > - Content observer notifications are not reliable.  If your process
> is
> > > not
> > > > running at the time the change occurs, the notification will never be
> > > > delivered.  A broadcast receiver will solve that problem, but please
> > > don't
> > > > use broadcast receivers for this!
> > > > - Contacts provider sends out non-discriminated notifications.
>  Whenever
> > > > anything (e.g. chat presence) changes, all observers are notified
> whether
> > > > they have supplied a specific URI or not.
> >
> > > > What you do want to use is the DIRTY flag and the
> CALLER_IS_SYNCADAPTER
> > > > query parameter and let SyncManager invoke your sync adapter.  It
> does
> > > some
> > > > sophisticated scheduling and you want to take advantage of it.
> >
> > > > Cheers,
> > > > - Dmitri
> >
> > > > On Fri, Jan 28, 2011 at 4:22 PM, himanshu jain <
> [email protected]
> > > >wrote:
> >
> > > > > Hi All,
> >
> > > > > I am trying to implement two way sync.
> >
> > > > > 1) I tried using SampleSyncAdapter Code first it works on emulator
> but
> > > > > not on Device , then i tried to write SyncAdapter with SyncService
> as
> > > > > a demo app with AccountAuthenticator, as per Documentation for
> > > > > SampleSyncAdapter SyncService gets called on
> > > > > ACTION_AUTHENTICATOR_INTENT but my service does not gets started on
> > > > > device , i defined service in manifest and all things but does not
> > > > > work on device it gets started on Emulator.
> >
> > > > > 2) If i port my app on device i can see only first name and last
> name
> > > > > fields how can i see all the fields available for contact
> > > > > application ?? can i edit them also utilizing the same native
> > > > > editor??.
> >
> > > > > 3) I planning to add contentobserver for sync from device to cloud
> > > > > whenever there is change corresponding to my account in contact
> table
> > > > > i want to sync it after listening through contentobserver.Is that
> > > > > correct ??.
> >
> > > > > thanks
> >
> > > > > --
> > > > > You received this message because you are subscribed to the Google
> > > > > Groups "Android Developers" group.
> > > > > To post to this group, send email to
> > > [email protected]
> > > > > To unsubscribe from this group, send email to
> > > > > [email protected]<android-developers%[email protected]><android-developers%2Bunsubs
> [email protected]><android-developers%2Bunsubs
> > > [email protected]>
> > > > > For more options, visit this group at
> > > > >http://groups.google.com/group/android-developers?hl=en
> >
> > > --
> > > You received this message because you are subscribed to the Google
> > > Groups "Android Developers" group.
> > > To post to this group, send email to
> [email protected]
> > > To unsubscribe from this group, send email to
> > > [email protected]<android-developers%[email protected]><android-developers%2Bunsubs
> [email protected]>
> > > For more options, visit this group at
> > >http://groups.google.com/group/android-developers?hl=en
>
> --
> You received this message because you are subscribed to the Google
> Groups "Android Developers" group.
> To post to this group, send email to [email protected]
> To unsubscribe from this group, send email to
> [email protected]<android-developers%[email protected]>
> For more options, visit this group at
> http://groups.google.com/group/android-developers?hl=en
>

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to