It worked fine with previous versions.
IPv6
-
At the moment IPv6 server addresses don’t seem to be supported. This is a pity. I’d love to have IPv6 in DavDroid…
On a related note, if I enter an IPv6 address as the URL basename DavDroid crashes. If I include the surrounding [] brackets, it doesn’t crash (but doesn’t connect either, of course).
-
Hello,
contacts synchronization fails (silently) through my wifi network until I disable IPv6.
Using F-droid 0.5.1-alpha version -
- Can you provide detailed steps to reproduce this?
- For detecting the problem we need a logcat output from your Android device… Can you somehow provide it? This would be very helpful!
-
In the current F-Droid version (0.5.1a) the behaviour seems reversed from what I described initially (or I mixed it up from the start). Anyway, I am on a Nexus 4, Android Version 4.4 KRT16O / rooted with DAVDroid 0.5.1 alpha:
- DAVDroid > Add Account Button
- select
DAVDroid
from account type list - enter IPv6 address and with surrounding [] and path like
[XXXX:XXXX:XXXX:XX::X]/ocname/remote.php/carddav/
- enter login info
- on press of the arrow button the app crashes.
- if I don’t include the [], the arrow button does nothing.
Here’s the log. I replaced my IPv6 with X’s, the amount of written digits is correct though. I also replaced my owncloud URL name with ocname, but I guess that’s of little relevance
12-11 15:53:49.724 I/am_create_activity(589): [0,1117331816,91,at.bitfire.davdroid/.MainActivity,android.intent.action.MAIN,NULL,NULL,270532608] 12-11 15:53:49.724 I/ActivityManager(589): START u0 {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=at.bitfire.davdroid/.MainActivity} from pid 854 12-11 15:53:49.794 I/ActivityManager(589): Start proc at.bitfire.davdroid for activity at.bitfire.davdroid/.MainActivity: pid=31598 uid=10076 gids={50076, 3003} 12-11 15:53:49.794 I/am_proc_start(589): [0,31598,10076,at.bitfire.davdroid,activity,at.bitfire.davdroid/.MainActivity] 12-11 15:53:49.824 I/am_proc_bound(589): [0,31598,at.bitfire.davdroid] 12-11 15:53:49.824 I/am_restart_activity(589): [0,1117331816,91,at.bitfire.davdroid/.MainActivity] 12-11 15:53:49.944 I/am_on_resume_called(31598): [0,at.bitfire.davdroid.MainActivity] 12-11 15:53:50.275 I/ActivityManager(589): Displayed at.bitfire.davdroid/.MainActivity: +493ms 12-11 15:53:50.275 I/am_activity_launch_time(589): [0,1117331816,at.bitfire.davdroid/.MainActivity,493,493] 12-11 15:53:53.118 I/am_pause_activity(589): [0,1117331816,at.bitfire.davdroid/.MainActivity] 12-11 15:53:53.118 I/am_on_paused_called(31598): [0,at.bitfire.davdroid.MainActivity] 12-11 15:53:53.628 I/sf_frame_dur(172): [at.bitfire.davdroid/at.bitfire.davdroid.MainActivity,16,0,1,0,0,1,1] 12-11 15:53:54.639 I/ActivityManager(589): START u0 {cmp=at.bitfire.davdroid/.syncadapter.AddAccountActivity (has extras)} from pid 27076 12-11 15:53:54.639 I/am_create_activity(589): [0,1117921328,91,at.bitfire.davdroid/.syncadapter.AddAccountActivity,NULL,NULL,NULL,8388608] 12-11 15:53:54.960 I/am_restart_activity(589): [0,1117921328,91,at.bitfire.davdroid/.syncadapter.AddAccountActivity] 12-11 15:53:55.030 I/am_on_resume_called(31598): [0,at.bitfire.davdroid.syncadapter.AddAccountActivity] 12-11 15:53:55.130 I/am_activity_launch_time(589): [0,1117921328,at.bitfire.davdroid/.syncadapter.AddAccountActivity,170,170] 12-11 15:53:55.130 I/ActivityManager(589): Displayed at.bitfire.davdroid/.syncadapter.AddAccountActivity: +170ms 12-11 15:54:31.358 W/davdroid.URIUtils(31598): Trying to repair invalid URL: https://[2a02:XXXX:XXXX:XX::X]/ocname/remote.php/carddav/ -> https://%5b2a02:XXXX:XXXX:XX::X%5d/ocname/remote.php/carddav/ 12-11 15:54:31.368 I/davdroid.QueryServerDialogFragment(31598): onCreateLoader 12-11 15:54:31.488 I/davdroid.WebDavResource(31598): Using preemptive authentication (not compatible with Digest auth) 12-11 15:54:31.499 I/am_crash(589): [31598,0,at.bitfire.davdroid,8928836,java.lang.IllegalArgumentException,Host name may not be null,HttpHost.java,83] 12-11 15:54:31.499 E/AndroidRuntime(31598): Process: at.bitfire.davdroid, PID: 31598 12-11 15:54:31.499 I/am_finish_activity(589): [0,1117921328,91,at.bitfire.davdroid/.syncadapter.AddAccountActivity,crashed] 12-11 15:54:31.499 E/AndroidRuntime(31598): at at.bitfire.davdroid.webdav.WebDavResource.options(WebDavResource.java:166) 12-11 15:54:31.499 E/AndroidRuntime(31598): at at.bitfire.davdroid.syncadapter.QueryServerDialogFragment$ServerInfoLoader.loadInBackground(QueryServerDialogFragment.java:114) 12-11 15:54:31.499 E/AndroidRuntime(31598): at at.bitfire.davdroid.syncadapter.QueryServerDialogFragment$ServerInfoLoader.loadInBackground(QueryServerDialogFragment.java:92) 12-11 15:54:31.499 W/ActivityManager(589): Force finishing activity at.bitfire.davdroid/.syncadapter.AddAccountActivity 12-11 15:54:31.529 I/am_pause_activity(589): [0,1117921328,at.bitfire.davdroid/.syncadapter.AddAccountActivity] 12-11 15:54:31.539 I/am_on_paused_called(31598): [0,at.bitfire.davdroid.syncadapter.AddAccountActivity] 12-11 15:54:31.579 I/am_resume_activity(589): [0,1117331816,91,at.bitfire.davdroid/.MainActivity] 12-11 15:54:31.619 I/am_on_resume_called(31598): [0,at.bitfire.davdroid.MainActivity] 12-11 15:54:31.919 I/sf_frame_dur(172): [at.bitfire.davdroid/at.bitfire.davdroid.syncadapter.AddAccountActivity,2,2,1,0,0,0,0] 12-11 15:54:31.949 I/am_destroy_activity(589): [0,1117921328,91,at.bitfire.davdroid/.syncadapter.AddAccountActivity,finish-imm] 12-11 15:54:31.969 I/sf_frame_dur(172): [at.bitfire.davdroid/at.bitfire.davdroid.syncadapter.AddAccountActivity,41,3,2,12,72,0,0] 12-11 15:54:32.750 I/am_proc_died(589): [0,31598,at.bitfire.davdroid] 12-11 15:54:32.750 I/am_finish_activity(589): [0,1117331816,91,at.bitfire.davdroid/.MainActivity,proc died without state saved] 12-11 15:54:32.750 I/ActivityManager(589): Process at.bitfire.davdroid (pid 31598) has died. 12-11 15:54:32.750 I/WindowState(589): WIN DEATH: Window{42a54e38 u0 at.bitfire.davdroid/at.bitfire.davdroid.MainActivity} 12-11 15:54:32.750 W/ActivityManager(589): Force removing ActivityRecord{42992168 u0 at.bitfire.davdroid/.MainActivity t91}: app died, no saved state 12-11 15:54:33.030 I/sf_frame_dur(172): [Application Error: at.bitfire.davdroid,0,0,0,0,0,1,0]
…looks like the URL string is parsed, deemed false, discarded and the empty URL not caught.
-
I looked at the logcat, and I found that my problem is in fact a serveur setup problem (multiple virtual hosts and https cause TLS errors. I tinkered in my server setup and now my synchronization now works well.
I use IPv6 through DNS lookup, not IPv6 directly in the URL, like grandchild. For grandchild bug, it seems related to “fixing” brackets around IPv6
-
So, is this fixed now and DAVdroid works with IPv6 for you?
-
Looking at jm’s comment it seems to be working with a domain name. But users might not have a domain or a fixed server IP (like me) and use IPv6 tunnels (like from Hurricane Electric or SiXXs) to tunnel through the IPv4 internet. So direct IPv6 entry as a server name would definitely be nice