Android如何以编程方式启用/禁用自动同步

Bla*_*ake 10 android sync

我需要知道如何以编程方式打开和关闭自动同步.

kin*_*ton 22

我想你在找

ContentResolver.setMasterSyncAutomatically(<boolean>);
Run Code Online (Sandbox Code Playgroud)

什么文档说:

设置适用于所有提供者和帐户的主自动同步设置.如果为false,则忽略每个提供程序的自动同步设置.

此方法要求调用者保留WRITE_SYNC_SETTINGS权限.

所以不要忘记在manifest.xml中添加权限:

<uses-permission android:name="android.permission.WRITE_SYNC_SETTINGS" />
Run Code Online (Sandbox Code Playgroud)

这应该禁用/启用所有同步.


@Sajmon:我更新了这个我认为非常有用的答案(我在我的个人项目中使用它).


Ben*_*Ben 5

我想你想要的是以下内容:

ContentResolver.setSyncAutomatically(account, authority, true/false);
Run Code Online (Sandbox Code Playgroud)