다음을 통해 공유


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 해당 스레드에서 호출됩니다.

프레임워크에서 언제든지 동기화를 취소할 수 있습니다. 예를 들어 사용자가 시작하지 않고 30분 이상 지속되는 동기화는 시간 제한 및 취소로 간주됩니다. 마찬가지로 프레임워크는 어댑터가 1분 동안 네트워크 활동을 모니터링하여 진행 중인지 여부를 확인하려고 시도합니다. 이 창을 통해 네트워크 트래픽이 0에 충분히 가까운 경우 동기화가 취소됩니다. 또는 을 통해 ContentResolver#cancelSync(Account, String) ContentResolver#cancelSync(SyncRequest)동기화를 취소할 것을 요청할 수도 있습니다.

동기화 스레드에서 동기화를 실행하여 Thread#interrupt() 동기화가 취소됩니다. <strong>코드에서 #onPerformSync(Account, Bundle, String, ContentProviderClient, SyncResult) 확인해야 Thread#interrupted()하거나 /strong> 중 하나를 재정의#onSyncCanceled()#onSyncCanceled(Thread)/<해야 합니다(어댑터가 여러 계정의 동기화를 병렬로 지원하는지 여부에 따라 다름). 어댑터가 프레임워크에서 발급한 취소를 존중하지 않으면 앱의 전체 프로세스가 종료될 위험이 있습니다.

동기화 어댑터가 되려면 이 클래스를 확장해야 하며 추상 메서드에 대한 구현을 제공하고 작업을 android.content.SyncAdapter사용하여 의도로 호출될 때 서비스의 결과를 #getSyncAdapterBinder() 반환하는 서비스를 android.app.Service#onBind(android.content.Intent) 작성합니다. 이 서비스는 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:accountType 특성은 android:contentAuthority 이 동기화 어댑터가 제공하는 콘텐츠 기관 및 계정 유형을 나타냅니다. <li>android:userVisible 는 기본적으로 true로 설정되며 이 동기화 어댑터가 동기화 설정 화면에 표시되는지 여부를 제어합니다. <li>android:supportsUploading 기본값은 true이고 true이면 해당 기관의 콘텐츠 공급자가 syncToNetwork가 true로 설정된 상태에서 작업을 할 ContentResolver#notifyChange(android.net.Uri, android.database.ContentObserver, boolean) 때마다 기관과 연결된 모든 동기화에 대해 업로드 전용 동기화가 요청됩니다. <li>android:allowParallelSyncs 는 기본값이 false이고 true이면 동기화 어댑터가 동시에 여러 계정에 대한 동기화를 처리할 수 있음을 나타냅니다. 그렇지 않으면 SyncManager는 계정의 데이터를 동기화할 것을 요청하기 전에 동기화 어댑터가 사용되지 않을 때까지 기다립니다. <li>android:isAlwaysSyncable 는 기본값이 false이고 true이면 추가된 각 계정에 대해 해당 동기화 어댑터에 대해 isSyncable 상태를 1로 초기화하도록 SyncManager에 지시합니다. <li>android:syncAdapterSettingsAction 기본값은 null이며 제공된 경우 동기화 어댑터의 동기화 설정을 조정하는 데 사용할 수 있는 활동의 의도 동작을 지정합니다. 작업은 동기화 어댑터와 동일한 패키지에 있어야 합니다. </ul>

에 대한 android.content.AbstractThreadedSyncAdapterJava 설명서

이 페이지의 일부는 Android 오픈 소스 프로젝트에서 만들고 공유하고 Creative Commons 2.5 특성 라이선스에 설명된 용어에 따라 사용되는 작업을 기반으로 하는 수정 사항입니다.

생성자

AbstractThreadedSyncAdapter(Context, Boolean, Boolean)

AbstractThreadedSyncAdapter를 만듭니다.

AbstractThreadedSyncAdapter(Context, Boolean)

AbstractThreadedSyncAdapter를 만듭니다.

AbstractThreadedSyncAdapter(IntPtr, JniHandleOwnership)

JNI 개체의 관리되는 표현을 만들 때 사용되는 생성자입니다. 런타임에서 호출합니다.

필드

LogSyncDetails
사용되지 않음.

커널 이벤트 로그 태그입니다.

속성

Class

Object런타임 클래스를 반환합니다.

(다음에서 상속됨 Object)
Context
Handle

기본 Android 인스턴스에 대한 핸들입니다.

(다음에서 상속됨 Object)
JniIdentityHashCode

동기화 작업을 호출하기 위해 스레드를 생성하는 SyncAdapter의 추상 구현입니다.

(다음에서 상속됨 Object)
JniPeerMembers

동기화 작업을 호출하기 위해 스레드를 생성하는 SyncAdapter의 추상 구현입니다.

PeerReference

동기화 작업을 호출하기 위해 스레드를 생성하는 SyncAdapter의 추상 구현입니다.

(다음에서 상속됨 Object)
SyncAdapterBinder
ThresholdClass

이 API는 Android용 Mono 인프라를 지원하며 코드에서 직접 사용할 수 없습니다.

ThresholdType

이 API는 Android용 Mono 인프라를 지원하며 코드에서 직접 사용할 수 없습니다.

메서드

Clone()

이 개체의 복사본을 만들고 반환합니다.

(다음에서 상속됨 Object)
Dispose()

동기화 작업을 호출하기 위해 스레드를 생성하는 SyncAdapter의 추상 구현입니다.

(다음에서 상속됨 Object)
Dispose(Boolean)

동기화 작업을 호출하기 위해 스레드를 생성하는 SyncAdapter의 추상 구현입니다.

(다음에서 상속됨 Object)
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)
ToArray<T>()

동기화 작업을 호출하기 위해 스레드를 생성하는 SyncAdapter의 추상 구현입니다.

(다음에서 상속됨 Object)
ToString()

개체의 문자열 표현을 반환합니다.

(다음에서 상속됨 Object)
UnregisterFromRuntime()

동기화 작업을 호출하기 위해 스레드를 생성하는 SyncAdapter의 추상 구현입니다.

(다음에서 상속됨 Object)
Wait()

현재 스레드가 각성될 때까지 대기하게 하며, 일반적으로 <알림을 받<>거나 <><중단/종료>합니다.>

(다음에서 상속됨 Object)
Wait(Int64, Int32)

현재 스레드가 각성될 때까지 대기하게 하며, 일반적으로 <>알림을 받<거나 <중단/>종료><>하거나 일정량의 실시간 경과가 발생할 때까지 대기합니다.

(다음에서 상속됨 Object)
Wait(Int64)

현재 스레드가 각성될 때까지 대기하게 하며, 일반적으로 <>알림을 받<거나 <중단/>종료><>하거나 일정량의 실시간 경과가 발생할 때까지 대기합니다.

(다음에서 상속됨 Object)

명시적 인터페이스 구현

IJavaPeerable.Disposed()

동기화 작업을 호출하기 위해 스레드를 생성하는 SyncAdapter의 추상 구현입니다.

(다음에서 상속됨 Object)
IJavaPeerable.DisposeUnlessReferenced()

동기화 작업을 호출하기 위해 스레드를 생성하는 SyncAdapter의 추상 구현입니다.

(다음에서 상속됨 Object)
IJavaPeerable.Finalized()

동기화 작업을 호출하기 위해 스레드를 생성하는 SyncAdapter의 추상 구현입니다.

(다음에서 상속됨 Object)
IJavaPeerable.JniManagedPeerState

동기화 작업을 호출하기 위해 스레드를 생성하는 SyncAdapter의 추상 구현입니다.

(다음에서 상속됨 Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

동기화 작업을 호출하기 위해 스레드를 생성하는 SyncAdapter의 추상 구현입니다.

(다음에서 상속됨 Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

동기화 작업을 호출하기 위해 스레드를 생성하는 SyncAdapter의 추상 구현입니다.

(다음에서 상속됨 Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

동기화 작업을 호출하기 위해 스레드를 생성하는 SyncAdapter의 추상 구현입니다.

(다음에서 상속됨 Object)

확장 메서드

JavaCast<TResult>(IJavaObject)

Android 런타임 확인 형식 변환을 수행합니다.

JavaCast<TResult>(IJavaObject)

동기화 작업을 호출하기 위해 스레드를 생성하는 SyncAdapter의 추상 구현입니다.

GetJniTypeName(IJavaPeerable)

동기화 작업을 호출하기 위해 스레드를 생성하는 SyncAdapter의 추상 구현입니다.

적용 대상