执行定期同步时出错

时间:2014-09-11 12:58:00

标签: android synchronization

我正在尝试使用同步适配器执行句点同步。它可以手动同步,但不能定期同步。这是我从logcat

获得的唯一东西
Could not find class 'android.content.SyncRequest$Builder', referenced from method 
com.example.user.sunshine.sync.SunshineSyncAdapter.configurePeriodicSync

以下是我的代码:

 public static void configurePeriodicSync(Context context, int syncInterval, int flexTime) {

    Account account = getSyncAccount(context);
    String authority = context.getString(R.string.content_authority);
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
        SyncRequest request = new SyncRequest.Builder().
                syncPeriodic(syncInterval, flexTime).
                setSyncAdapter(account, authority).build();
        ContentResolver.requestSync(request);
    } else {
        ContentResolver.addPeriodicSync(account,
                authority, new Bundle(), syncInterval);
    }
}

有谁知道为什么会发生这种情况以及我应该如何解决它?

1 个答案:

答案 0 :(得分:-1)

如果您在未运行KitKat及更高版本的设备中进行测试,则会出现此错误。我打赌,它在Kitkat及以上没有问题,因为相应的android类将被编译到apk中。

我建议你不要担心,如果你在较低的设备上进行测试,因为这部分代码:

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
        SyncRequest request = new SyncRequest.Builder().
                syncPeriodic(syncInterval, flexTime).
                setSyncAdapter(account, authority).build();
        ContentResolver.requestSync(request);
    } else {
        ContentResolver.addPeriodicSync(account,
                authority, new Bundle(), syncInterval);
    }

还尝试在构建库中检查android 4.4。*的导出按钮