AbstractThreadedSyncAdapter 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
生成线程以调用同步操作的 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)/#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 indicate which content authority and for which account types this sync adapters.
<li>android:userVisible 默认为 true,并控制此同步适配器是否显示在“同步设置”屏幕中。
<li>android:supportsUploading 默认为 true;如果为 true,则每当该颁发机构的内容提供程序对 ContentResolver#notifyChange(android.net.Uri, android.database.ContentObserver, boolean) syncToNetwork 设置为 true 时,将请求与颁发机构关联的所有 syncadapters 进行仅上传同步。
<li>android:allowParallelSyncs 默认为 false,如果为 true,则表示同步适配器可以同时处理多个帐户的同步。 否则,SyncManager 将等到同步适配器未使用,然后请求同步帐户的数据。
<li>android:isAlwaysSyncable 默认为 false,如果 true 指示 SyncManager 将添加的每个帐户的同步适配器的 isSyncable 状态初始化为 1。
<li>android:syncAdapterSettingsAction 默认为 null,如果提供,则指定可用于调整同步适配器同步设置的活动的意向操作。 活动必须与同步适配器位于同一个包中。
</ul>
Java文档android.content.AbstractThreadedSyncAdapter。
本页的某些部分是根据 创建和共享的工作进行的修改,并根据 许可证中所述的条款使用。
构造函数
| 名称 | 说明 |
|---|---|
| AbstractThreadedSyncAdapter(Context, Boolean, Boolean) |
创建 |
| AbstractThreadedSyncAdapter(Context, Boolean) |
创建 |
| AbstractThreadedSyncAdapter(IntPtr, JniHandleOwnership) |
创建 JNI 对象的托管表示形式时使用的构造函数;由运行时调用。 |
字段
| 名称 | 说明 |
|---|---|
| LogSyncDetails |
已过时.
内核事件日志标记。 |
属性
| 名称 | 说明 |
|---|---|
| Class |
返回此 |
| Context | |
| Handle |
基础 Android 实例的句柄。 (继承自 Object) |
| JniIdentityHashCode |
获取互操作运行时分配给此Java对等的标识哈希代码。 (继承自 Object) |
| JniManagedPeerState |
生成线程以调用同步操作的 SyncAdapter 的抽象实现。 (继承自 JavaObject) |
| JniPeerMembers |
获取用于调用此Java对等方成员的 JNI 元数据。 |
| PeerReference |
获取此Java对等方的 JNI 对象引用。 (继承自 Object) |
| SyncAdapterBinder | |
| ThresholdClass |
此 API 支持 Mono for Android 基础结构,不打算直接从代码使用。 |
| ThresholdType |
此 API 支持 Mono for 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< 或 >em<interrupted>/em<。><> (继承自 Object) |
| Wait(Int64, Int32) |
使当前线程等待直到唤醒,通常是通过 <em>通知</em> 或 <em interrupted>/em<>,或直到经过一定数量的实时。 (继承自 Object) |
| Wait(Int64) |
使当前线程等待直到唤醒,通常是通过 <em>通知</em> 或 <em interrupted>/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) |
获取实例 |
| JavaAs<TResult>(IJavaPeerable) |
尝试强制 |
| JavaCast<TResult>(IJavaObject) |
执行 Android 运行时检查的类型转换。 |
| JavaCast<TResult>(IJavaObject) |
生成线程以调用同步操作的 SyncAdapter 的抽象实现。 |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
尝试强制 |