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
- Наследование
- Атрибуты
Комментарии
Абстрактная реализация 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
<intent-filter>
<action android:name="android.content.SyncAdapter" />
</intent-filter>
<meta-data android:name="android.content.SyncAdapter"
android:resource="@xml/syncadapter" />
Атрибут android:resource должен указывать на ресурс, который выглядит следующим образом:
<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"
/>
<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(Context, Boolean) |
Создает объект |
| AbstractThreadedSyncAdapter(IntPtr, JniHandleOwnership) |
Конструктор, используемый при создании управляемых представлений объектов JNI; вызывается средой выполнения. |
Поля
| Имя | Описание |
|---|---|
| LogSyncDetails |
Устаревшие.
Тег журнала событий ядра. |
Свойства
| Имя | Описание |
|---|---|
| Class |
Возвращает класс среды выполнения этого |
| 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) |
Сообщите, что при открытии поставщика содержимого перед вызовом |
| 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 типа экземпляра |
| JavaAs<TResult>(IJavaPeerable) |
Попробуйте принуждать к типу |
| JavaCast<TResult>(IJavaObject) |
Выполняет преобразование типа, проверяемого средой выполнения Android. |
| JavaCast<TResult>(IJavaObject) |
Абстрактная реализация SyncAdapter, которая создает поток для вызова операции синхронизации. |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Попробуйте принуждать к типу |