I have the same problem as you. My groupdav-server is behind a client certificate authenticated webserver but still needs username/password. I tried using davdroid's client certificate option and
for the base URL, but that doesn't work as well
@andrew said in Events shifted 1 hour with cPanel and Hong Kong Time:
@rfc2822 thanks for the troubleshooting.
I will report to cPanel, possibly via my hosting service provider, and keep everyone posted on the progress.
The following is the update from the hosting service provider.
According to cPanel reply, the issues was relate to Horde:
Once Horde have resolve the issues, cPanel will including the fix in next cPanel update.
You may consider to add the event at webmail for now.
@xyzzy said in Support for SSL client certificate and Basic/Digest at same time:
I neither change the authentication method of the groupware server nor the certificate requirement of the proxy server before the groupware server. For me it would be good enough if I could specify user/password in the base url. But davdroid seems to remove this part of the url.
It doesn't remove anything, but it doesn't use username/password from the URL. At the moment, DAVdroid unfortunately only supports username/password or client certificates as authentication, but not both because client certificates are implemented as an authentification method.
BTW, I cannot reply using firefox 59.0.2. In the webconsole I get:
I'm typing this reply with Firefox 59.0.2 (MozillaFirefox-59.0.2-lp150.1.6.x86_64 from OpenSUSE Leap 15 Beta). If you can find out what the problem is, it would be kind if you could report it to NodeBB directly. We're currently using NodeBB 1.8.2 (latest release) without modifications.
If you have a problem with DAVdroid, please:
Try the latest DAVdroid version. Use the latest version of your server software, if applicable.
Read the Configuration and FAQ pages carefully. The most common issues are explained there.
Use the forum search! Most questions have already been answered.
Search the the Web for the problem, maybe ask friends who are willing to help.
Make sure that it's not a server problem. Search the FAQ/forums/bug tracker of your server software, too. Many supposed DAVdroid bugs are server (configuration) problems.
Provide helpful and verbose information!
If you expect other people to help you, provide as much information as you can. It's no fun to debug a problem without knowing about what's actually the problem.
Describe exactly what you were doing (steps to reproduce), what you tried to achieve and what your problem is. Imagine someone else who wants to reproduce the problem to find a solution and provide all necessary information.
Give information about your environment: what is your server software (including version), what are your calendar URLs, do other clients work, etc.
If possible, try to explain what you already have tried to solve your problem.
Important: Go to DAVdroid / Settings (left navigation drawer in the main screen) / Debug info. Send these information to yourself (using the "Share" action, for instance by email). Paste the info to fpaste.org or a similar service and provide a link.
If you get "No CalDAV/CardDAV service found" when you try to add an account:
Tap "View logs". Send those logs to yourself (using the "Share" action, for instance by email).
Paste the logs to fpaste.org or a similar service and provide a link (feel free to let it expire in a month).
If you get an error notification while synchronizing:
Tap the notification. A debug info activity will appear.
Send the debug info to yourself (using the "Share" action, for instance by email).
Paste the debug info (≠ logs) to fpaste.org or a similar service and provide a link (feel free to let it expire in a month). Short debug output can be inserted in the text, but please quote with ``` (at the beginning and the end).
If additional logs are required to diagnose the problem, continue below.
Your problem doesn't cause a notification or you need verbose logs?
DAVdroid / Settings (left navigation drawer in the main screen) / Enable "log to external storage." A notification with the log file path appears.
Do whatever causes your problem (e.g. "Refresh calendars", or initiate a sync).
Disable "log to external storage" again. Please keep in mind that those log files may contain private information and are accessible by any app which has the permission to access external storage, so delete them after those steps.
Send the logs to yourself (e.g. in the file manager and then send by email, or use the brilliant app Share with HTTP).
Remove private data from the logs, if applicable.
Paste the logs to fpaste.org or a similar service and provide a link (feel free to let it expire in a month). Short parts of the logs can be inserted in the text, but please quote with ``` (at the beginning and the end).
If your problem has been solved, it would be kind to let other people (who were willing to help you) know the actual solution.
new sync logic (preparation for Collection Sync, uses less memory)
"retry" and "view item" actions for sync errors
I/O errors are shown as minimum priority notifications (which are not shown in the notification bar, but when the notification drawer is pulled down)
notifications will disappear automatically if they're not useful anymore (for instance, the I/O error is gone after a while)
add start-up info dialog for vendor-specific auto-sync problems (notably Xiaomi and Huawei)
removed unnecessary permission activity (now handled by account activity)
library updates (including okhttp 3.10 which should now be able to handle unexpected HTTP 100 status messages)
various other improvements and bug fixes
Contacts storage (com.android.provider.contacts)
I already try this ... but strangely now I'm not able to see Contacts storage neither com.android.provider.contacts (I see Preferred Contact and Google Contacts)
It's in the FAQ. Please have a look at https://www.davdroid.com/faq/wifi-ssid-restriction-location-permission/
DAVdroid will only ask for location permission when you restrict synchronization to specific WiFi SSIDs.
Does that help you?
Unfortunately, I have forgotten to show the resource names for tasks (in contrast to events and contacts). Should be fixed with https://gitlab.com/bitfireAT/davdroid/commit/fd84ff37e5f93d00f4a162ea5d5cd6724b1c0a1f
Regarding your problem: Please enable debug logs (see screenshot on https://www.davdroid.com/faq/how-to-debug/) and have a look at them. They should contain all necessary information.
Does this help?
@executive No, this is a server problem and not within DAVdroid's responsibility.
@rfc2822 Of course it's not. But if the problem is with my server software, then how did your APK fix the problem (or seems to, so far).
@rfc2822 said in Some contacts are being duplicated on the phone, not the server:
Did you try the adb method as described on https://www.davdroid.com/faq/how-to-debug/?
Awesome! Thanks so much for that tip. I was able to dump the contacts database to my computer, and low and behold the culprit is Whatsapp.
This hasn't solved my issue, but at least I know what the problem really is now. I'm really grateful to you guys for helping me get this far.
The story continues on StackExchange, where I just asked this question.
We are using Airwatch MDM, with Android for work and full managed devices.
More Details would require a private message, to not publish internal company informations.
I found the DAVdroid for MDM in the play store, will have a look at it.
@rfc2822 said in checksum error while sync contacts to second user account on same phone:
Can you provide exact steps to reproduce the problem?
I checked the configuration today once again and found that the special data privacy settings for DAVDroid in LOS 14.1 where activated and reading of contacts was forbidden. After I have changed the configuration the error disappeared. Thanks for your help!
Thanks - and you are correct! DavDroid uses the path returned from the server root to dictate where to put the relative path on PROPFIND calls - changing it to dir/ results in it working fine. Great app.
@mnalis said in events sometimes deleted on device soon after adding/changing:
Could it be that some upgrade or reinstallation of DAVdroid reset that empty string to "0" ?
Maybe. It should not be the case, but I'd have to investigate before and I don't think that's worth it.
On related note, should "0" even be allowed as value, as in best case it will only make a sync a very little faster than "1", but could have potentially disastrous results when changing timezones (manually, or automatically, or different TZ settings in server/client side [for example when country changes its timezone defs]) etc?
The worst thing that can happen is that some events of today are not shown on the Android device. Since the fix I have linked in my previous post, "0" actually means "now" and not "the current hour/minute, but in UTC" like before. So "0" should now (= in future DAVdroid versions) work as expected (= all events since the exact time of synchronization), but personally I'd never use 0. Syncing a few days, weeks, even months into the past doesn't have an impact on the performance and allows you to look up recent events in the calendar.
I've now set it to "90" as you recommend, but if it is safe I would like to make it empty string again. I've never had problems back in the days when it always synced all events, and I'd like for it to keep working the way I'm used to.
The problem is that the empty value doesn't scale at the moment, because it does a simple PROPFIND for all events. So if you have 100.000 events over 10 years, every sync lists 100.000 events. However, WebDAV collection sync (RFC 6578) is planned for DAVdroid 1.12. We will soon release DAVdroid 1.11 which contains preparations for this feature. With WebDAV collection sync, you can use the empty value without performance impact.
@lje If you need to parse vCards, I strongly recommend to use a specialized library so that you don't have to deal with those details (and there are many of them). DAVdroid uses the great library ez-vcard for that purpose.
I solved the issue - thanks!
Just for the protocol:
I checked the settings you mentioned already before and compared them to the provided screenshots - they were correct.
DAVDroid was not affected by Battery saving and permission to access calendar and contacts were granted. (There is one screen that looks different on my phone though and that is the "additional permissions" section. At your screenshots you enable permissions for "read tasks" and "write tasks". Unfortunately, I don´t have this menu items in my list of "additional permissions".)
I had to restart my phone and once manually trigger the synchronisation inside DAVDroid, then the events suddenly appear inside my calender app, even without adding the calendar account in my calendar app. I suppose that the problem was that I have set the permissions "to late" where DAVDroid had already tried to do a sync which presumably failed. Maybe thats why the restart and manual sync solved the issue.
Thanks a lot!