ennswi / androidcaldavsyncadapater Goto Github PK
View Code? Open in Web Editor NEWThis project forked from wildgarden/androidcaldavsyncadapater
Caldav synch adapter for Android
License: GNU General Public License v3.0
This project forked from wildgarden/androidcaldavsyncadapater
Caldav synch adapter for Android
License: GNU General Public License v3.0
The sync on a calendar stops if there is a endless event from outlook
Hi
How do we enable the 2 way sync option?
Thanks!
I see from #8 and #10 that this has been discussed before, however unless I've missed something, aCalDAV still cannot use the recommended OAuth-2 authentication for CalDAV access to Google.
I can use the old deprecated interface at www.google.com with an app password, but the new interface at apidata.googleusercontent.com will not log me in.
I'm worried that the deprecated interface will stop working at some point because of the warnings from Google about it here: https://developers.google.com/google-apps/calendar/caldav/v2/guide#connecting_to_googles_caldav_server
Hi,
There is no Change password option :( There really should be. I've had users losing a lot of calendar updates because they changed the password at the server side and after a while they noticed their device did not update. They usually uninstall the App (losing all changes) and reinstall to change their password. While they should change back the password at the Server (if possible), then sync, then change the server password and device password at the same time. But this is all too difficult, a change password option would save us all the hassle :)
Hi,
the following happens very often, but sometimes not. It seems that is happens every time upon a new installation. Maybe someone knows a bit more about it. In the activity enter a https URL which is not existing, e.g. https://xxxxxxx (to simulate a typo) In the method getHttpClient(). This register command
registry.register(new Scheme("https",
(mTrustAll ? EasySSLSocketFactory.getSocketFactory() : SSLSocketFactory
.getSocketFactory()), 443
));
runs on my Galaxy S5 up to 2-3 minutes. I started to look a bit into the issue, but before spending more time on it I thought I check if someone else already did some work on it. According to http://developer.android.com/reference/org/apache/http/conn/scheme/SchemeRegistry.html this is deprecated with API level 22 and it links to http://android-developers.blogspot.de/2011/09/androids-http-clients.html
Questions:
Regards, K.
Hey guys,
i noticed a battery drain tonight when my CalDAV server was offline.
It seems that ACalDAV is trying to sync in regular time when the server is offline. This seems to be a huge problem even when your abroad.
What about if we raise the polling frequency once the server is offline and try only to ping the server first if the server was gone at the last sync attempt?
To improve the "reconnect" to the CalDAV server when you're abroad or so, we can try to ping the server when the device is connected to a WiFi network.
what do you all mean?
Regards,
Eloo
AndroidManifest.xml uses de.jdevel.acaldav
while gradle uses de.we.acaldav
, which is the correct one?
In v0.0.5 SelfSigned SSL did work fine, but starting from v0.0.6 I do get an SSL error when I try to add a new account. I did uncheck the "Check SSL Certificate". I tried checking the "Check SSL Certificate" but that didn't solve the problem either. I downgraded back to v0.0.5 now I can add my accounts again.
Android 5.0.1 on Samsung GT-i9505
I don't have the ability to compile this myself, and was wondering if you provided pre-compiled builds for download anywhere, as I'd very much like to try it out.
Could you, please, implement two-way syncronization with the local ISC file?
It would be usefull for contacts backup and peer-to-peer contacts syncronization.
Hi,
Subject says it all. If CalDAV Sync Adapter is installed, your App does not show when configuring a new sync account. It does show CalDavSync Adapter.
Ralf.
Hi,
When setting up the account, it asks for an update interval. I think there should be some sort of default when you enter nothing. Or let the system decide. How does this interval work? According to gggard this should not be possible in sync adapters. gggard#231
Hi,
My work uses an Office 365 for Business account. I use standard IMAP client to sync email.
I use CaldavSyncAdapter (from @gggard) to sync multiple calendars onto my Android Device.
Does this tool support Office 365 Calendar Sync?
If yes, what are the settings to be used?
I'm syncing a calendar in GMT+12 timezone from a device configured in GMT+2 timezone.
What happens is that while events originating on my GMT+2 calendar software instances are all fine while those originating in the GMT+12 timezone are interpreted wrong.
Looking at the detai of a single event, which Thunderbird/Lighting (fetching the events from the same source) give me as happening on May 10 12:00am-12:30am
(May 10 10:00am-10:30am in UTC+12
), appear in Android calendar as happening instead on May 10 11:00pm-11:30pm
(May 10 09:00pm-09:30pm in UTC+12
).
This makes it crazy to use mixed-timezone events on the calendar.
Hi, I am using your Caldav adapter to sync to Google calendars on an old Android phone without Google Play Services. As a calendar app, I'm using ACalendar (https://play.google.com/store/apps/details?id=org.withouthat.acalendar).
I noticed the following program. When I set up recurring events, I normally delete single events from the recurring events chain, once they're past. They keep on showing, using AndroidCaldavSyncAdapater, while they don't when I run Acalendar on a phone synched with Google Play Services. Is this fixible, in your opinion? :)
Sorry if I am not clear enough about the problem. If needed, I can try and attach a pic :)
In the AsyncTask of the above activity in switch(result), case(SUCCESS) there is this code
case SUCCESS:
boolean OldAccount = false;
LoginResult Result = LoginResult.Success_Calendar;
if (OldAccount) {//more code here
In the development branch on line 460. What is this OldAccount good for? I cannot see what this variable is good for and where it is being used or where the if ever can evaluate to true. Is that some kind of "we leave some old code, just in case"? If so does it make sense for some reason to keep it or can this be removed for better readability? From my point of view uncommenting code and leaving a comment would be the better option in such case.
Why was this fork made ? What's the future plan ?
Hi,
after creating (maybe with thunderbird/lightning) a recursive event (ex: every sunday at 10:00 am) and changing one item dates (ex.: from sunday to monday), the sincronization on my mobile device shows only the original event, not the new one.
Non problem with other desktop clients.
Thanks
I've embedded caldav URLs on my website with the form
caldav://admin%[email protected]:8000/calendar/calendars/admin%40example.com/admin%40example.com
and these don't seem to work, it looks like the sync adapter isn't registering itself as able to work with these protocols (caldav, caldavs).
More of a question:
Does aCalDavSync support a BedeWork server protected by any of those systems (Shibboleth is SAML, so SAML with Ipsilon would also be part of this question)?
If not, would it be possible? I would prefer Shibboleth as it has IdP, Service Provider, and full federation.
Apologies to start annoying with a bug report. I have one calendar perfectly syncing (with Google). Added a new google account that results in "Caldav sync error (I/O)"
Below is log from kitkat. Had the same issue with marshmallow. These ROM have no google-apps, no Xposed. Stock CyanogenMod (in nexus 4).
E/SyncAdapter(22133): IOException
E/SyncAdapter(22133): java.net.MalformedURLException
E/SyncAdapter(22133): at java.net.URL.<init>(URL.java:152)
E/SyncAdapter(22133): at java.net.URL.<init>(URL.java:125)
E/SyncAdapter(22133): at org.gege.caldavsyncadapter.b.a.<init>(Unknown Source)
E/SyncAdapter(22133): at org.gege.caldavsyncadapter.syncadapter.a.onPerformSync(Unknown Source)
E/SyncAdapter(22133): at android.content.AbstractThreadedSyncAdapter$SyncThread.run(AbstractThreadedSyncAdapter.java:259)
E/dalvikvm(22133): Could not find class 'android.app.Notification$Action$Builder', referenced from method a.a.a.a.g.a
W/dalvikvm(22133): VFY: unable to resolve new-instance 47 (Landroid/app/Notification$Action$Builder;) in La/a/a/a/g;
D/dalvikvm(22133): VFY: replacing opcode 0x22 at 0x0000
W/dalvikvm(22133): VFY: unable to find class referenced in signature ([Landroid/app/RemoteInput;)
E/dalvikvm(22133): Could not find class 'android.app.RemoteInput[]', referenced from method a.a.a.a.g.a
W/dalvikvm(22133): VFY: unable to resolve new-array 694 ([Landroid/app/RemoteInput;) in La/a/a/a/g;
D/dalvikvm(22133): VFY: replacing opcode 0x23 at 0x0005
D/dalvikvm(22133): DexOpt: unable to opt direct call 0x0074 at 0x0e in La/a/a/a/g;.a
D/dalvikvm(22133): DexOpt: unable to opt direct call 0x00b0 at 0x13 in La/a/a/a/g;.a
W/ActivityManager( 1027): Unable to start service Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x24000000 cmp=de.we.acaldav/org.gege.caldavsyncadapter.authenticator.AuthenticatorActivity (has extras) } U=0: not found
D/SyncManager( 1027): failed sync operation bioc u0 (org.gege.caldavsyncadapter.account), com.android.calendar, SERVER, latestRunTime 56950162, reason: AutoSync, SyncResult: stats [ numIoExceptions: 1]
I/SNISocketFactory(22133): Established TLSv1.2 connection with www.google.com using TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
I/SyncAdapter(22133): 1 calendars found at android
I/SyncAdapter(22133): Detected calendar name=first lastname URI=https://www.google.com/calendar/dav/[email protected]/events
I/SyncAdapter(22133): Entries: 0
I/SyncAdapter(22133): Rows inserted: 0
I/SyncAdapter(22133): Rows updated: 0
I/SyncAdapter(22133): Rows deleted: 0
I/SyncAdapter(22133): Rows skipped: 0
I/SyncAdapter(22133): Io Exceptions: 0
I/SyncAdapter(22133): Parse Exceptions: 0
I/SyncAdapter(22133): Auth Exceptions: 0
I/SyncAdapter(22133): Conflict Detected Exceptions: 0
E/SyncAdapter(22133): IOException
E/SyncAdapter(22133): java.net.MalformedURLException
E/SyncAdapter(22133): at java.net.URL.<init>(URL.java:152)
E/SyncAdapter(22133): at java.net.URL.<init>(URL.java:125)
E/SyncAdapter(22133): at org.gege.caldavsyncadapter.b.a.<init>(Unknown Source)
E/SyncAdapter(22133): at org.gege.caldavsyncadapter.syncadapter.a.onPerformSync(Unknown Source)
E/SyncAdapter(22133): at android.content.AbstractThreadedSyncAdapter$SyncThread.run(AbstractThreadedSyncAdapter.java:259)
W/ActivityManager( 1027): Unable to start service Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x24000000 cmp=de.we.acaldav/org.gege.caldavsyncadapter.authenticator.AuthenticatorActivity (has extras) } U=0: not found
D/SyncManager( 1027): failed sync operation lab u0 (org.gege.caldavsyncadapter.account), com.android.calendar, USER, latestRunTime 57034926, reason: 10011, SyncResult: stats [ numIoExceptions: 1]
E/SyncAdapter(22770): IOException
E/SyncAdapter(22770): java.net.MalformedURLException
E/SyncAdapter(22770): at java.net.URL.<init>(URL.java:152)
E/SyncAdapter(22770): at java.net.URL.<init>(URL.java:125)
E/SyncAdapter(22770): at org.gege.caldavsyncadapter.b.a.<init>(Unknown Source)
E/SyncAdapter(22770): at org.gege.caldavsyncadapter.syncadapter.a.onPerformSync(Unknown Source)
E/SyncAdapter(22770): at android.content.AbstractThreadedSyncAdapter$SyncThread.run(AbstractThreadedSyncAdapter.java:259)
W/ActivityManager( 1027): Unable to start service Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x24000000 cmp=de.we.acaldav/org.gege.caldavsyncadapter.authenticator.AuthenticatorActivity (has extras) } U=0: not found
D/SyncManager( 1027): failed sync operation usrname@https://www.google.com/calendar/dav/[email protected]/events u0 (org.gege.caldavsyncadapter.account), com.android.calendar, SERVER, latestRunTime 57609835, reason: AutoSync, SyncResult: stats [ numIoExceptions: 1]
Hi everyone,
I managed to follow the fork though I'm rather a normal user... ;-)
I want to use acaldav for syncing my Google Work account. It worked with the caldav sync adapter in version 1.80. In version 1.81 it didn't work as well as now in acaldav.
Could you please look into the matter? It would be really appreciated!
If I can be of any help, please tell me how!
Best regards, Sören
Hello. I constantly receive this notification:
Caldav sync error (general)
Invalid int: "T0"
I use SOGo calendars in Cyanogenmod 6.1 (No google services)
Hello there,
i switched from calDAV to aCallDav and it was working fine. But after a reboot the accounts get removed.
There are 2 web calendars with aCalDav on my Samsung S4 with LineageOS and Android 7.1.2
On a second phone with the same configuration i have only 1 calendar and it still persists after reboot.
Could it be the Problem, to have 2 calendars managed by aCalDav?
i Installed aCalDav through fDroid
Edit:
With one calendar the same issue appears
Edit2, Nevermind:
Found the Problem
SD-Card Issue :)
Hello,
When I install aCalDav, I setup sync every 15minutes.
At the beginning, the sync is perfect, but, after one or two days, the sync stop...
So, I uncheck and re-check the sync option, and it works only for one time...
I'm under Android 4.4.4
Thanks for your support.
Lionel
I try to sync my owncloud calendar, but only get "Invalid Server answer, Check URL". The sync of the calender works well with Thunderbird (Lightning). What can I do?
You do not recognize the Korean name account and the URL account address that contains the Korean alphabet. This app is not available to users who use Korean accounts.
Hi,
any attempt to initially connect to SabreDav server is failing with invalid URL message.
On the server itself there is nothing in the logs, when I try. Using same paths/credentials works fine with Lightning, iOS, MacOS, ....
So apparently it is something else necessary to be set on the device, I am doing something wrong or there is any bug.
Any idea what else I could try? Or how I could debug further?
Following paths are all shown as invalid URL:
https://subdomain.domain.de/server.php/principals/user3
or
https://subdomain.domain.de/server.php/principals/user3/
or
https://subdomain.domain.de/server.php/calendars/user3/2125FE20-CA93-418E-BC7F-4CC8BF750ADD/
or
https://subdomain.domain.de/server.php/
Regards
Micha
Hi,
I'm not sure if this is an issue of aCalDav or the Calendar, but maybe you can reproduce this:
I'm using CyanogenMod M12 with Calendar 4.4.4 and try to sync it with my owncloud 7 using SSL. In general the sync works - when I add a date into the calendar of the phone and click 'refresh', the date appears in owncloud. But when I refresh again (in the phone) a second date appears in the calendar of the phone. It looks like the sync reimported the date back from owncloud, not realizing that it is the same date. On the owncloud-side the date stays 'singleton' - just on the phone, I have a second one.
This makes the sync unusable for me, since I want to use it primary from phone to server and not the other way.
thanks for any reply
diddi
Some time ago, i suddenly had issues synchronizing with Baikal.
On the client side the error appeared as a notification without a title saying "Invalid int: T0"
LogCat filtered by SyncAdapter:
07-19 16:01:33.423: I/SyncAdapter(11888): 1 calendars found at android 07-19 16:01:33.423: I/SyncAdapter(11888): Detected calendar name=Default calendar URI=https://ch4osdd.ignorelist.com/baikal/cal.php/calendars/dtx/default/ 07-19 16:01:34.273: I/SyncAdapter(11888): Event /baikal/cal.php/calendars/dtx/default/51622ddd-c40e-4524-8994-cefc524c5841-caldavsyncadapter.ics androidUri=content://com.android.calendar/events/1916 07-19 16:01:34.364: I/SyncAdapter(11888): Event /baikal/cal.php/calendars/dtx/default/52d34f54-87d6-401c-b5ce-8cd057d22f19.ics androidUri=content://com.android.calendar/events/1917 07-19 16:01:34.449: I/SyncAdapter(11888): Event /baikal/cal.php/calendars/dtx/default/55be1e1d-a263-49cb-b942-7a857b29db7d.ics androidUri=content://com.android.calendar/events/1918 07-19 16:01:34.484: I/SyncAdapter(11888): Event /baikal/cal.php/calendars/dtx/default/5c7330be-9458-48fb-8e80-c5c93be40b9f-caldavsyncadapter.ics androidUri=null 07-19 16:01:34.726: E/SyncAdapter(11888): Updating calendar exception java.lang.IllegalArgumentException 07-19 16:01:34.726: E/SyncAdapter(11888): java.lang.IllegalArgumentException: Invalid int: "T0" 07-19 16:01:34.726: E/SyncAdapter(11888): at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:167) 07-19 16:01:34.726: E/SyncAdapter(11888): at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:137) 07-19 16:01:34.726: E/SyncAdapter(11888): at android.content.ContentProviderProxy.insert(ContentProviderNative.java:475) 07-19 16:01:34.726: E/SyncAdapter(11888): at android.content.ContentProviderClient.insert(ContentProviderClient.java:204) 07-19 16:01:34.726: E/SyncAdapter(11888): at org.gege.caldavsyncadapter.b.b.a.b(Unknown Source) 07-19 16:01:34.726: E/SyncAdapter(11888): at org.gege.caldavsyncadapter.syncadapter.a.a(Unknown Source) 07-19 16:01:34.726: E/SyncAdapter(11888): at org.gege.caldavsyncadapter.syncadapter.a.onPerformSync(Unknown Source) 07-19 16:01:34.726: E/SyncAdapter(11888): at android.content.AbstractThreadedSyncAdapter$SyncThread.run(AbstractThreadedSyncAdapter.java:259)
LogCat filtered by ACalDav's process id (different from the above due to different recording time)
07-19 15:44:35.818: E/DatabaseUtils(5750): Writing exception to parcel 07-19 15:44:35.818: E/DatabaseUtils(5750): java.lang.NumberFormatException: Invalid int: "T0" 07-19 15:44:35.818: E/DatabaseUtils(5750): at java.lang.Integer.invalidInt(Integer.java:138) 07-19 15:44:35.818: E/DatabaseUtils(5750): at java.lang.Integer.parse(Integer.java:410) 07-19 15:44:35.818: E/DatabaseUtils(5750): at java.lang.Integer.parseInt(Integer.java:367) 07-19 15:44:35.818: E/DatabaseUtils(5750): at java.lang.Integer.parseInt(Integer.java:334) 07-19 15:44:35.818: E/DatabaseUtils(5750): at com.android.providers.calendar.CalendarProvider2.fixAllDayTime(CalendarProvider2.java:1596) 07-19 15:44:35.818: E/DatabaseUtils(5750): at com.android.providers.calendar.CalendarProvider2.insertInTransaction(CalendarProvider2.java:2290) 07-19 15:44:35.818: E/DatabaseUtils(5750): at com.android.providers.calendar.SQLiteContentProvider.insert(SQLiteContentProvider.java:98) 07-19 15:44:35.818: E/DatabaseUtils(5750): at android.content.ContentProvider$Transport.insert(ContentProvider.java:238) 07-19 15:44:35.818: E/DatabaseUtils(5750): at android.content.ContentProviderNative.onTransact(ContentProviderNative.java:163) 07-19 15:44:35.818: E/DatabaseUtils(5750): at android.os.Binder.execTransact(Binder.java:446)
Obviously the last event lead to the database error.
I removed the entry on my baikal server by deleting the corresponding database entry and voilá it worked again.
I'm sorry that i can't give you more details about the failing entry, but i guess there has to be done some more error handling regarding corrupted server entrys.
In case you don't know: https://davdroid.bitfire.at/
Hi,
I tested your recent release on Android 4.3 and 4.4.2 x86 VM's. More to come.
Here is what I found so far:
Ralf.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.