AbstractThreadedSyncAdapter Класс

Определение

Абстрактная реализация SyncAdapter, которая создает поток для вызова операции синхронизации.

[Android.Runtime.Register("android/content/AbstractThreadedSyncAdapter", DoNotGenerateAcw=true)]
public abstract class AbstractThreadedSyncAdapter : Java.Lang.Object
[<Android.Runtime.Register("android/content/AbstractThreadedSyncAdapter", DoNotGenerateAcw=true)>]
type AbstractThreadedSyncAdapter = class
    inherit Object
Наследование
AbstractThreadedSyncAdapter
Атрибуты

Комментарии

Абстрактная реализация SyncAdapter, которая создает поток для вызова операции синхронизации. Если операция синхронизации уже выполняется при получении запроса синхронизации, ошибка будет возвращена новому запросу, и существующий запрос будет разрешен для продолжения. Однако если синхронизация не выполняется, поток будет вызван #onPerformSync в этом потоке.

Синхронизация может быть отменена в любое время платформой. Например, синхронизация, которая не была инициирована пользователем и длится более 10 минут, будет считаться истечением времени ожидания и отменена. Аналогичным образом платформа попытается определить, выполняется ли адаптер, отслеживая его сетевое действие в течение минуты. Если сетевой трафик по этому окну достаточно близко к нулю, синхронизация будет отменена. Вы также можете запросить отмену синхронизации с помощью ContentResolver#cancelSync(Account, String) или ContentResolver#cancelSync(SyncRequest).

Синхронизация отменена путем выдачи Thread#interrupt() в потоке синхронизации. <Strong Либо код должен проверяться>, либо необходимо переопределить один из#onPerformSync(Account, Bundle, String, ContentProviderClient, SyncResult)Thread#interrupted()#onSyncCanceled(Thread)/ /strong#onSyncCanceled() (в зависимости от того, поддерживает ли адаптер синхронизацию нескольких учетных записей параллельно).<> Если адаптер не учитывает отмену, выданную платформой, вы рискуете убить весь процесс приложения.

Чтобы быть адаптером синхронизации, необходимо расширить этот класс, предоставить реализации абстрактных методов и написать службу, которая возвращает результат #getSyncAdapterBinder() вызова службы android.app.Service#onBind(android.content.Intent) при вызове с намерением с действием android.content.SyncAdapter. Эта служба должна указать следующий фильтр намерений и теги метаданных в файле AndroidManifest.xml

&lt;intent-filter&gt;
                &lt;action android:name="android.content.SyncAdapter" /&gt;
              &lt;/intent-filter&gt;
              &lt;meta-data android:name="android.content.SyncAdapter"
                        android:resource="@xml/syncadapter" /&gt;

Атрибут android:resource должен указывать на ресурс, который выглядит следующим образом:

&lt;sync-adapter xmlns:android="http://schemas.android.com/apk/res/android"
               android:contentAuthority="authority"
               android:accountType="accountType"
               android:userVisible="true|false"
               android:supportsUploading="true|false"
               android:allowParallelSyncs="true|false"
               android:isAlwaysSyncable="true|false"
               android:syncAdapterSettingsAction="ACTION_OF_SETTINGS_ACTIVITY"
            /&gt;

<ul><li>The android:contentAuthority and android:accountType attributes указывает, какой центр содержимого и для каких учетных записей типы учетных записей служит этот адаптер синхронизации. <li>android:userVisible по умолчанию имеет значение true и определяет, отображается ли этот адаптер синхронизации на экране параметров синхронизации. <значение li>android:supportsUploading по умолчанию имеет значение true, и если синхронизация только для отправки будет запрошена для всех синхадаптеров, связанных с центром, когда поставщик содержимого этого центра выполняет синхронизацию с параметром ContentResolver#notifyChange(android.net.Uri, android.database.ContentObserver, boolean) syncToNetwork значение true. <li>android:allowParallelSyncs по умолчанию имеет значение false, а если значение true указывает, что адаптер синхронизации может обрабатывать синхронизацию для нескольких учетных записей одновременно. В противном случае SyncManager будет ожидать, пока адаптер синхронизации не используется, прежде чем запрашивать синхронизацию данных учетной записи. <li>android:isAlwaysSyncable по умолчанию имеет значение false, и если значение true указывает SyncManager инициализировать состояние isSyncable до 1 для этого адаптера синхронизации для каждой добавленной учетной записи. <значение li>android:syncAdapterSettingsAction по умолчанию имеет значение NULL и если оно указано действие "Намерение" действия, которое можно использовать для настройки параметров синхронизации адаптера синхронизации. Действие должно находиться в том же пакете, что и адаптер синхронизации. </ul>

Java документации по android.content.AbstractThreadedSyncAdapter.

Части этой страницы — это изменения на основе работы, созданной и общей Project и используемых в соответствии с условиями, описанными в разделе "".

Конструкторы

Имя Описание
AbstractThreadedSyncAdapter(Context, Boolean, Boolean)

Создает объект AbstractThreadedSyncAdapter.

AbstractThreadedSyncAdapter(Context, Boolean)

Создает объект AbstractThreadedSyncAdapter.

AbstractThreadedSyncAdapter(IntPtr, JniHandleOwnership)

Конструктор, используемый при создании управляемых представлений объектов JNI; вызывается средой выполнения.

Поля

Имя Описание
LogSyncDetails
Устаревшие.

Тег журнала событий ядра.

Свойства

Имя Описание
Class

Возвращает класс среды выполнения этого Objectобъекта.

(Унаследовано от Object)
Context
Handle

Дескриптор базового экземпляра Android.

(Унаследовано от Object)
JniIdentityHashCode

Возвращает хэш-код удостоверения, назначенный этому Java одноранговой среде выполнения взаимодействия.

(Унаследовано от Object)
JniManagedPeerState

Абстрактная реализация SyncAdapter, которая создает поток для вызова операции синхронизации.

(Унаследовано от JavaObject)
JniPeerMembers

Возвращает метаданные JNI, используемые для вызова элементов этого Java однорангового узла.

PeerReference

Возвращает ссылку на объект JNI для этого Java однорангового узла.

(Унаследовано от Object)
SyncAdapterBinder
ThresholdClass

Этот API поддерживает инфраструктуру Mono для Android и не предназначен для использования непосредственно из кода.

ThresholdType

Этот API поддерживает инфраструктуру Mono для Android и не предназначен для использования непосредственно из кода.

Методы

Имя Описание
Clone()

Создает и возвращает копию этого объекта.

(Унаследовано от Object)
Construct(JniObjectReference, JniObjectReferenceOptions)

Абстрактная реализация SyncAdapter, которая создает поток для вызова операции синхронизации.

(Унаследовано от JavaObject)
Dispose()

Освобождает ресурсы, удерживаемые этим Java одноранговым узлом.

(Унаследовано от Object)
Dispose(Boolean)

Освобождает ресурсы, удерживаемые этим Java одноранговым узлом.

(Унаследовано от Object)
DisposeUnlessReferenced()

Абстрактная реализация SyncAdapter, которая создает поток для вызова операции синхронизации.

(Унаследовано от JavaObject)
Equals(Object)

Абстрактная реализация SyncAdapter, которая создает поток для вызова операции синхронизации.

(Унаследовано от JavaObject)
Equals(Object)

Указывает, равен ли другой объект этому объекту.

(Унаследовано от Object)
GetHashCode()

Возвращает хэш-значение кода для объекта.

(Унаследовано от Object)
JavaFinalize()

Вызывается сборщиком мусора в объекте, когда сборка мусора определяет, что больше ссылок на объект нет.

(Унаследовано от Object)
Notify()

Просыпается один поток, ожидающий монитора этого объекта.

(Унаследовано от Object)
NotifyAll()

Просыпает все потоки, ожидающие монитора этого объекта.

(Унаследовано от Object)
OnPerformSync(Account, Bundle, String, ContentProviderClient, SyncResult)

Выполните синхронизацию для этой учетной записи.

OnSecurityException(Account, Bundle, String, SyncResult)

Сообщите, что при открытии поставщика содержимого перед вызовом #onPerformSyncвозникло исключение безопасности.

OnSyncCanceled()

Указывает, что операция синхронизации отменена.

OnSyncCanceled(Thread)

Указывает, что операция синхронизации отменена.

OnUnsyncableAccount()

Позволяет отложить синхронизацию до правильной настройки всех учетных записей.

SetHandle(IntPtr, JniHandleOwnership)

Задает свойство Handle.

(Унаследовано от Object)
SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

Абстрактная реализация SyncAdapter, которая создает поток для вызова операции синхронизации.

(Унаследовано от JavaObject)
ToArray<T>()

Создает управляемый массив из этого Java оболочки массива.

(Унаследовано от Object)
ToString()

Возвращает строковое представление объекта.

(Унаследовано от Object)
UnregisterFromRuntime()

Отменяет регистрацию этого Java однорангового узла из среды выполнения взаимодействия.

(Унаследовано от Object)
Wait()

Приводит к тому, что текущий поток будет ждать, пока он не проснется, как правило, путем <><уведомления/>em или <эм>прерванного</em.>

(Унаследовано от Object)
Wait(Int64, Int32)

Приводит к тому, что текущий поток будет ждать, пока он не проснется, как правило, при <>получении уведомления</>em или <>эм прерваны< или> до тех пор, пока не истекло определенное количество реального времени.

(Унаследовано от Object)
Wait(Int64)

Приводит к тому, что текущий поток будет ждать, пока он не проснется, как правило, при <>получении уведомления</>em или <>эм прерваны< или> до тех пор, пока не истекло определенное количество реального времени.

(Унаследовано от Object)

Явные реализации интерфейса

Имя Описание
IJavaPeerable.Disposed()

Абстрактная реализация SyncAdapter, которая создает поток для вызова операции синхронизации.

(Унаследовано от JavaObject)
IJavaPeerable.Finalized()

Абстрактная реализация SyncAdapter, которая создает поток для вызова операции синхронизации.

(Унаследовано от JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

Абстрактная реализация SyncAdapter, которая создает поток для вызова операции синхронизации.

(Унаследовано от JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Абстрактная реализация SyncAdapter, которая создает поток для вызова операции синхронизации.

(Унаследовано от JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Абстрактная реализация SyncAdapter, которая создает поток для вызова операции синхронизации.

(Унаследовано от JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

Абстрактная реализация SyncAdapter, которая создает поток для вызова операции синхронизации.

(Унаследовано от JavaObject)

Методы расширения

Имя Описание
GetJniTypeName(IJavaPeerable)

Возвращает имя JNI типа экземпляра self.

JavaAs<TResult>(IJavaPeerable)

Попробуйте принуждать к типуself, проверяяTResult, является ли приведение допустимым на стороне Java.

JavaCast<TResult>(IJavaObject)

Выполняет преобразование типа, проверяемого средой выполнения Android.

JavaCast<TResult>(IJavaObject)

Абстрактная реализация SyncAdapter, которая создает поток для вызова операции синхронизации.

TryJavaCast<TResult>(IJavaPeerable, TResult)

Попробуйте принуждать к типуself, проверяяTResult, является ли приведение допустимым на стороне Java.

Применяется к