this is my manifest file

<manifest xmlns:android="http://schemas.android.com/apk/res/android";
      package="org.c99.SyncProviderDemo"
      android:versionCode="1"
      android:versionName="1.0">

<uses-permission
        android:name="android.permission.GET_ACCOUNTS" />
    <uses-permission
        android:name="android.permission.USE_CREDENTIALS" />
    <uses-permission
        android:name="android.permission.MANAGE_ACCOUNTS" />
    <uses-permission
        android:name="android.permission.AUTHENTICATE_ACCOUNTS" />
    <uses-permission
        android:name="android.permission.INTERNET" />
    <uses-permission
        android:name="android.permission.WRITE_SETTINGS" />
    <uses-permission
        android:name="android.permission.WRITE_SECURE_SETTINGS" />
    <uses-permission
        android:name="android.permission.READ_CONTACTS" />
    <uses-permission
        android:name="android.permission.WRITE_CONTACTS" />
    <uses-permission
        android:name="android.permission.READ_SYNC_STATS" />
    <uses-permission
        android:name="android.permission.READ_SYNC_SETTINGS" />
    <uses-permission
        android:name="android.permission.WRITE_SYNC_SETTINGS" />

    <application android:icon="@drawable/icon" android:label="@string/
app_name">
        <activity android:name=".LoginActivity"
                  android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.VIEW" />
            </intent-filter>
        </activity>
                <activity android:name=".ProfileActivity"
                                        android:label="Profile">
                        <intent-filter>
                                <action 
android:name="android.intent.action.VIEW" />
                                <category 
android:name="android.intent.category.DEFAULT" />
                                <data android:mimeType="vnd.android.cursor.item/
vnd.org.c99.SyncProviderDemo.profile" />
                        </intent-filter>
                </activity>
                <service android:name=".AccountAuthenticatorService"
                        android:exported="true">
                        <intent-filter>
                                <action 
android:name="android.accounts.AccountAuthenticator" />
                        </intent-filter>
                        <meta-data 
android:name="android.accounts.AccountAuthenticator"
                                android:resource="@xml/authenticator" />
                </service>
                <service android:name=".ContactsSyncAdapterService"
                        android:exported="true" >
                        <intent-filter>
                                <action 
android:name="android.content.SyncAdapter" />
                        </intent-filter>
                        <meta-data android:name="android.content.SyncAdapter"
                                android:resource="@xml/syncadapter" />
                        <meta-data 
android:name="android.provider.CONTACTS_STRUCTURE"
                                android:resource="@xml/contacts" />
                </service>

    </application>
    <uses-sdk android:minSdkVersion="5" />

</manifest>

thanks

On Jan 31, 4:53 pm, Dmitri Plotnikov <dplotni...@google.com> wrote:
> I would double-check every line of AndroidManifest.xml, compare it with the
> one in SampleSyncAdapter to see if anything's missing.
>
> On Mon, Jan 31, 2011 at 4:26 PM, himanshu jain <himanshu....@gmail.com>wrote:
>
>
>
>
>
>
>
> > @Dmitri
>
> > Yes i created my account when i go to Account & sync section through
> > settings and after adding my account , sync gets enabled in DDMS i can
> > see SyncManager gets called twice once on setIsSyncable and on
> > setSyncAutomatically but My Service associated with SyncAdapter does
> > not gets started and also i dont reach to onPerformSync immediately
> > when i explicitly call requestSync.
>
> > thanks
>
> > On Jan 31, 4:11 pm, Dmitri Plotnikov <dplotni...@google.com> wrote:
> > > 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 <himanshu....@gmail.com
> > >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 <dplotni...@google.com> 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 <
> > himanshu....@gmail.com
> > > > >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 <dplotni...@google.com>
> > 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 <
> > > > himanshu....@gmail.com
> > > > > > >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
> > > > > > android-developers@googlegroups.com
> > > > > > > > To unsubscribe from this group, send email to
> > > > > > > > android-developers+unsubscr...@googlegroups.com<android-developers%2Bunsubs
> > > > > > > >  cr...@googlegroups.com><android-developers%2Bunsubs
> > cr...@googlegroups.com><android-developers%2Bunsubs
> > > > cr...@googlegroups.com><android-developers%2Bunsubs
> > > > > > cr...@googlegroups.com>
> > > > > > > > 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
> > > > android-developers@googlegroups.com
> > > > > > To unsubscribe from this group, send email to
> > > > > > android-developers+unsubscr...@googlegroups.com<android-developers%2Bunsubs
> > > > > >  cr...@googlegroups.com><android-developers%2Bunsubs
> > cr...@googlegroups.com><android-developers%2Bunsubs
> > > > cr...@googlegroups.com>
> > > > > > 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
> > android-developers@googlegroups.com
> > > > To unsubscribe from this group, send email to
> > > > android-developers+unsubscr...@googlegroups.com<android-developers%2Bunsubs
> > > >  cr...@googlegroups.com><android-developers%2Bunsubs
> > cr...@googlegroups.com>
> > > > 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 android-developers@googlegroups.com
> > To unsubscribe from this group, send email to
> > android-developers+unsubscr...@googlegroups.com<android-developers%2Bunsubs 
> > cr...@googlegroups.com>
> > 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 android-developers@googlegroups.com
To unsubscribe from this group, send email to
android-developers+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to