5

テレビ放送情報をデバイスに同期する必要があるAndroidデバイス用に独自のSyncAdapterを作成していますが、アカウント設定の[データと同期]部分にある[同期][mydata]チェックボックスが表示されないという問題が発生しました。

独自のSyncAdapterを実装し、xmlで適切に定義しました。

これが私のsync.xmlです:

<sync-adapter xmlns:android="http://schemas.android.com/apk/res/android"
    android:contentAuthority="com.example.tv.programs"
    android:accountType="com.example.tv.sync"
    android:supportsUploading="false"
    android:userVisible="true"
/>

同期サービスとプロバイダーを定義するAndroidマニフェストの対応する部分:

<service android:name=".sync.ProgramSynchronizationService" android:exported="true" android:process=":programs">
    <intent-filter>
        <action android:name="android.content.SyncAdapter" />
    </intent-filter>
    <meta-data
        android:name="android.content.SyncAdapter"
        android:resource="@xml/sync" />
</service>

<provider android:name="com.example.tv.providers.ProgramContentProvider" 
    android:authorities="com.example.tv.programs" />

データと同期の部分の下に何も表示されないので、何か間違ったことをしていますか?

4

2 に答える 2

10

同期アダプターのセットアップに加えて、(おそらくプログラムの開始時に) 呼び出す必要があります。

ContentResolver.setIsSyncable(account, "com.example.tv.programs", 1)
于 2011-01-14T07:55:57.017 に答える
3

これに加えて、同期を自動的に有効にしたい場合は、次のことができます

ContentResolver.setSyncAutomatically(account, "com.example.tv.programs",true);
于 2012-01-31T22:11:51.380 に答える