Contacts not synchronizing with iOS

I’m running Nextcloud 10 and iOS 10, currently I have successfully connected my contacts to my server, but I don’t believe my contacts are actually being synced, as my server has no contacts from my iPhone. I tried changing the URL on my phone but it defaults back to server.com/remote.php/dav/principals/users/USER, but when I do show URL in the contacts app it provides https://server.com/remote.php/dav/addressbooks/users/USER/contacts/

Is there a particular way to initiate syncing or a setting I’m missing?

I think the URL synced should be something like https://server.tld/remote.php/dav/principals/users/USER/

That’s the default, and it doesn’t work. None of my contacts are being synced

My problem is somewhat different that @stratacast’s; that is, I am not having difficulty with the proper URL morphing, but, nevertheless, my iOS testing device does not sync changes in either direction. I too am running NextCloud v10 (in my case 10.0.1) and connecting via a CardDav connection running on iOS v10 (in my case 10.0.2).

Within moments of setting up the account on iOS, I can see my initial set of 200 or so cards on the iOS device – but changing any one of those cards on the iOS side does not result in the change being seen on NextCloud’s web interface—even after logging off and on. Nor do changes made to a card via the web interface (after having setup the initial connection between the two) ever make it down to the phone. This includes creating new cards and deleting or modifying existing cards.

Needless to say, I cannot roll this out to my users in this state, which is super, super frustrating!

Can you check your logfiles (nextcloud as well as your server’s)? In the access.log you should normally see some requests that try to make changes.

Is this a new problem? Did the sync work on iOS9, or on NC 9 or OC 8.2? This information can help to find the error.

I think I had this working with iOS 9 and NC 9, but got NC 10 and iOS 10 pretty concurrently so I can’t say myself whether this is an iOS or NC problem, but I can’t even get contacts to go back and forth between my server and iOS

Though for about a day I did not see any improvement in my situation (iOS and NextCloud not syncing), this morning I decided to link up my laptop’s copy of Apple’s Address Book/Contacts app via a CardDav account to the same NextCloud-hosted contacts as I am testing with on iOS. My set of 200 or so contacts showed up on the laptop within about 10 seconds, but – much like with my iOS situation – a change made to a card on MacOS did not seem to be reflected on NextCloud’s web interface for the same card – this despite seeing a sync cursor (spinning, grey-colored, gear-like animation) to the right of the CardDav account’s root entry that’s displayed in the left sidebar of MacOS’s Contacts app. I’m running MacOS “Sierra” (MacOS v10.12); which is to say “Contacts” v10.0, build 1756).

I then tried making a change to a contact entry via NextCloud’s web interface to see whether it would show up on the laptop. As soon as the next sync event happened on the Mac (the aforementioned gear icon spinning for 8 or 10 seconds and then stopping), the change made on the web side of things did show on MacOS. seeing that, I immediately checked for the earlier change that was initiated on the Mac, and it, too, was showing on the web site.

So good news, sort of, for NextCloud 10 <-> MacOS 10.12.

I then checked my iPhone (yesterday’s setup was still configured on the phone), and both of those two changes were visible on their respective cards. I then made a subsequent change to one of those cards via iOS and it showed up on the Mac right away – but the NextCloud web client didn’t show the change. Obviously, for the Mac to have known about the change, the change made would have had to have been propagated to the NextCloud server, so I then asked the browser displaying NextCloud’s web interface (Safari Technology Preview release 14 (e.g. Safari 10.1, WebKit 12603.1.6.0.2) to re-render, and the change showed up.

Several other changes that I tried from various origin points were propagated to all clients. Nevertheless, as an aside, in every case, if the change was not made directly via the NextCloud web client, the NextCloud web client would not show the change made until I manually refreshed the browser. I tried with the NextCloud web client being viewed on both Safari Technology Preview and Firefox 48.0.2. The fact that I have to forcibly ask the browser to re-render in order to to see recent changes is unfortunate, I think, but perhaps it’s expected for the current version of NextCloud and/or NextCloud’s calendar plug-in.

So, good news, sort of, for NextCloud 10 <-> iOS 10.0.2 is now working for me.

I say “sort of” because none of the above explains why, for the many times I tried it yesterday and this morning, iOS and NextCloud refused to synchronize changes regardless of whether the change was initiated via NextCloud’s web client or iOS’s Contacts/Address Book app. The phone did not get rebooted between yesterday and now. And I was testing from the same Wi-Fi network, which also didn’t get rebooted between then and now. And though the phone did disconnect from that network and reconnect to it, failures in yesterday’s NextCloud to iOS tests were occurring on a phone that had no difficulty accessing various Internet-hosted resources. The only thing that I can think of that appears to have happened between yesterday’s iOS failures and today’s iOS successes is that I hooked up the laptop’s Address Book app with the NextCloud contacts database and initiated change through that connection. I suspect that such a thing happening has no logical bearing on the problem, but that’s all I can come up with at the moment.

I’m quite busy at the moment, but next week I’ll see if I can’t reproduce the iOS problem by setting up a fresh connection between the NextCloud database and a different iOS device.

So I found out something interesting for my case, I’m not sure if this will help your case cwisniewski, but I found out I kind of had to “get the ball rolling” with my contacts. I downloaded the .vcf of all my contacts from my iCloud and then loaded them all up into my Nextcloud Contacts app. After that it appears I can sync back and forth between my server and iPhone via CardDAV

I got this working when i remove all contact accounts, reboot iphone and then add my nextcloud.

Contacts created through the web interface (10.0.1) will be synced to my iphone (ios 10), and edits to those already synced contacts will be synced back successfully. However, newly created / old contacts from the iphone will not be synced to CardDAV. The same goes for Calendar.

Still no solution in sight?

The discussions in Apple official website may give you some hint to solve contacts not synchronizing with iOS. If the above method does not solve your problem, I will introduce you to an article I stumbled upon, which may help you solve the problem that the iPhone contacts cannot be synced to iCloud.

hey, im having this issue at the moment where Nextcloud and iOS are not setup as a two way sync.

if i have my default contacts as iOS it will not go to Nextcloud and viceversa, looks to be either or.

but if i add them in both instances i can see that they get linked.

is this a normal behaviour?

im on NC 16

Please advise.

Thanks in advance!