Now works with 1.5 and your test file.
Android 11 / local ICS file / permissions
ICSx doesn’t have the permission to manage all files ( https://developer.android.com/training/data-storage/manage-all-files ) and thus doesn’t have access to local .ics files it could have had access before Android 11. After upgrading from 10 to 11 my config is no longer working (EACCESS permission denied).
Just wanted to share this in case other people meet the same situation.
I still have to find a folder that ICSx could reach, these haven’t worked:
May I ask how the .ics files are brought to your device?
@rfc2822 I use syncthing to synchronize one folder.
To try the few other folders, I just copied the file around.
Is there another workflow that would work better?
I’m having the same issue. Trying to create a workflow with a local synchronised ICS file, which is not working due to ICSx5 not having proper file permissions. Very strange, as the “file:” URI is supported. Issue on Android 10 for me.
By the way I can reproduce the error in an AVD, so I don’t think it’s something specific to my device.
- Pixel 4 API 30
- upload ICS via file explorer in Android Studio, to sdcard/cal.ics
- start ICSx and try to configure it to use file:///sdcard/cal.ics
If I modify the sdk to 29, it works fine:
So this has something to do with the changes in permissions of Android 11.
hiqua last edited by hiqua
This also works, but doesn’t help at least for the Google Playstore:
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 8c0c897..d319a7e 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -15,6 +15,7 @@ android:maxSdkVersion="22" /> <!-- add/update/delete events --> <uses-permission android:name="android.permission.READ_CALENDAR" /> + <uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.WRITE_CALENDAR" /> <!-- view/change the sync interval and whether the account is synchronizing --> <uses-permission android:name="android.permission.READ_SYNC_SETTINGS" /> @@ -39,6 +40,7 @@ android:name=".MyApp" android:networkSecurityConfig="@xml/network_security" android:requestLegacyExternalStorage="true" + android:preserveLegacyExternalStorage="true" android:theme="@style/AppTheme" tools:ignore="UnusedAttribute"> @@ -158,4 +160,4 @@ android:parentActivityName=".ui.CalendarListActivity" /> </application> -</manifest> \ No newline at end of file +</manifest>
After installation, I manually set the permissions so that ICSx can manage all files.
file:///would just open a proper file picker (or there would be an icon for this case).