super-productivity icon indicating copy to clipboard operation
super-productivity copied to clipboard

Bug: Android - LocalFile and Nextcloud Client Synchronization

Open theatischbein opened this issue 4 months ago • 5 comments

Moved from https://github.com/johannesjo/super-productivity-android/issues/58

Your Environment

  • superproductivity 10.0.11
  • android app 21.0 from f-droid (also tried GPlay version for comparision with same result)
  • Android 14 (LineagesOS 21, berrylium)
  • Nextcloud Client 3.30.0

Expected Behavior

  • when sync is disabled I would expect a popup error message like in the second scenario that the file access permission has failed
  • I expect a Nextcloud folder to be a valid source, because syncing to a local file on android wouldn't make much sense to me
  • the file permission loop when having sync enabled beforehand, should be intercepted after e.g. 3 failures

Current Behavior

I want use the sync feature with my Nextcloud android client file system integration.

If I start with Sync disabled, I can select my folder and allow file access. Afterwards the file path is not shown, but the error "Needs file access permission".

If I enable Sync first, I can select my folder and allow file access. Afterwars I got the popup error in superproductivity: "Sync Local file permission denied. Your file permission for local syncing has been revoked." I can choose to disable to sync or to "Give permission". If I click "Give permission" I am back at the folder select and can do this in an endless loop.

Using a local folder does work, but I haven't found a way to automatically download files in a folder in Nextcloud client, only for AutoUpload. My idea for a work around was to use Android/media/com.nextcloud.client/nextcloud/[account]/path/ which does work, but not for fetching remote updates automatically.

Steps to Reproduce (for bugs)

First scenario

  1. Go to settings, open sync collapsable
  2. Disable Syncing
  3. Click on Sync Provider and select LocalFile
  4. In open folder select menu choose Nextcloud as source and your folder
  5. Click 'USE THIS FOLDER'
  6. Click on 'ALLOW' file access permission
  7. See the red error message 'Needs file access permission' instead of the file path

Second scenario

  1. Go to settings, open sync collapsable
  2. Enable Syncing
  3. Click on Sync Provider and select LocalFile
  4. In open folder select menu choose Nextcloud as source and your folder
  5. Click 'USE THIS FOLDER'
  6. Click on 'ALLOW' file access permission
  7. Popup back in superproductiviy appears. Click 'Disable Sync' to exit the loop. Click 'Give permission' to go back to step 4
  8. ... (looping)

Can you reproduce this reliably?

yes. I reinstalled the app multiple time from f-droid and GPlay Store and redproduce them in the clean installed environment

Console Output

Error Log (Desktop only)

theatischbein avatar Oct 13 '24 06:10 theatischbein