I get it done by changing the SYNCTOKEN_PREFIX form the SabreDav Doc to the nextcloud one according this link :
https://github.com/nextcloud/3rdparty/blob/master/sabre/dav/lib/DAV/Sync/Plugin.php
Hope it helps.
Trying to sync ownlcoud 6 (ubuntu, nginx), contacts (synced with thunderbird on PC) not syncing with android (miui 5, custom ). Can sync without problems about 70-80 contacts, problems begin if I have 100 or more - sync fails, window closes.
Here is the output of adb errors (sorry for filtering, have no egrep on win)
E/FWKEXT ( 499): Enter GetCurrentOP
E/FWKEXT ( 499): Enter GetCurrentOP
E/FWKEXT ( 499): Enter GetCurrentOP
E/FWKEXT ( 499): Enter GetCurrentOP
E/FWKEXT ( 499): Enter GetCurrentOP
E/SynchronizeFolderOperation( 9386): Checked govza@marha.govza.com/ : Operation finished with HTTP status code 405 (fail)
E/FWKEXT ( 499): Enter GetCurrentOP
E/FWKEXT ( 499): Enter GetCurrentOP
E/FWKEXT ( 499): Enter GetCurrentOP
E/FWKEXT ( 499): Enter GetCurrentOP
E/FWKEXT ( 499): Enter GetCurrentOP
E/FWKEXT ( 499): Enter GetCurrentOP
E/NativeCrypto( 9814): ssl=0x5d7f3f50 cert_verify_callback x509_store_ctx=0x5e4c6a40 arg=0x0
E/NativeCrypto( 9814): ssl=0x5d7f3f50 cert_verify_callback calling verifyCertificateChain authMethod=RSA
E/DatabaseUtils( 3543): Writing exception to parcel
E/DatabaseUtils( 3543): java.lang.IllegalStateException: Process 9814 exceeded cursor quota 100, will kill it
E/DatabaseUtils( 3543): at android.database.CursorWindow$Injector.checkQuota(CursorWindow.java:85)
E/DatabaseUtils( 3543): at android.database.CursorWindow$Injector.addQuota(CursorWindow.java:73)
E/DatabaseUtils( 3543): at android.database.CursorWindow.recordNewWindow(CursorWindow.java:810)
E/DatabaseUtils( 3543): at android.database.CursorWindow.<init>(CursorWindow.java:192)
E/DatabaseUtils( 3543): at android.database.AbstractWindowedCursor.clearOrCreateWindow(AbstractWindowedCursor.java:198)
E/DatabaseUtils( 3543): at android.database.sqlite.SQLiteCursor.fillWindow(SQLiteCursor.java:154)
E/DatabaseUtils( 3543): at android.database.sqlite.SQLiteCursor.getCount(SQLiteCursor.java:148)
E/DatabaseUtils( 3543): at android.database.CursorToBulkCursorAdaptor.getBulkCursorDescriptor(CursorToBulkCursorAdaptor.java:143)
E/DatabaseUtils( 3543): at android.content.ContentProviderNative.onTransact(ContentProviderNative.java:118)
E/DatabaseUtils( 3543): at android.os.Binder.execTransact(Binder.java:351)
E/DatabaseUtils( 3543): at dalvik.system.NativeStart.run(Native Method)
E/AndroidRuntime( 9814): FATAL EXCEPTION: SyncAdapterThread-1
E/AndroidRuntime( 9814): java.lang.IllegalStateException: Process 9814 exceeded cursor quota 100, will kill it
E/AndroidRuntime( 9814): at android.os.Parcel.readException(Parcel.java:1433)
E/AndroidRuntime( 9814): at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:185)
E/AndroidRuntime( 9814): at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:137)
E/AndroidRuntime( 9814): at android.content.ContentProviderProxy.query(ContentProviderNative.java:366)
E/AndroidRuntime( 9814): at android.content.ContentProviderClient.query(ContentProviderClient.java:84)
E/AndroidRuntime( 9814): at android.content.ContentProviderClient.query(ContentProviderClient.java:65)
E/AndroidRuntime( 9814): at at.bitfire.davdroid.resource.LocalCollection.findByRemoteName(LocalCollection.java:137)
E/AndroidRuntime( 9814): at at.bitfire.davdroid.syncadapter.SyncManager.synchronize(SyncManager.java:131)
E/AndroidRuntime( 9814): at at.bitfire.davdroid.syncadapter.DavSyncAdapter.onPerformSync(DavSyncAdapter.java:70)
E/AndroidRuntime( 9814): at android.content.AbstractThreadedSyncAdapter$SyncThread.run(AbstractThreadedSyncAdapter.java:254)
E/FWKEXT ( 499): Enter GetCurrentOP
E/FWKEXT ( 499): Enter GetCurrentOP
E/FWKEXT ( 499): Enter GetCurrentOP
E/FWKEXT ( 499): Enter GetCurrentOP
E/FWKEXT ( 499): Enter GetCurrentOP
E/CellLocation( 499): create GsmCellLocation
Which DAVdroid version?
0.5.3-alpha from F-Droid
I’ll close this issue because I think it’s a duplicate of #51 and it should have been fixed with 0.5.4 (see release notes). Please try with 0.5.4+ (uninstall DAVdroid, install 0.5.4 or later, add account again) and if this issue persists, please comment here and I’ll re-open the issue.