Content Unavailable Error with Multiple Google Drive Accounts/Vaults
Please agree to the following
- [X] I have searched existing issues for duplicates
- [X] I agree to follow this project's Code of Conduct
Summary
Unable to simultaneously access vaults with two Google Drive Accounts
What software is involved?
- Operating System: iPadOS 17.4
- Cryptomator: 2.5.0
- Google Drive
Volume Type
None
Steps to Reproduce
- Successfully create Vault (1) for GoogleDrive Account (A) - open in iPadOS Files App & successfully authenticate; view Vault OK.
- Successfully create Vault (2) for GoogleDrive Account (B) - open in iPadOS Files App & successfully authenticate; unable to view vault - error "Content Unavailable - try again".
Expected Behavior
It should be possible to simultaneously mount/unlock/access vaults for two of more authenticated Google Drive accounts.
Prior to iPadOS 17.4, this was possible.
Actual Behavior
While it is possible to mount/authenticate vaults for two or more Google Drive accounts, only the first-accessed vault is accessible from the iPadOS Files App. Vaults associated with other authenticated Google Drive accounts cannot be accessed. When attempting to access the vault from the Files App, error "Content Unavailable - Try again".
This problem only appears to affect Google Drive Accounts
Reproducibility
Always
Relevant Log Output
No response
Anything else?
No response
[ADD] issue also exist on iOS 17.4 with a single Microsoft OneDrive account
Thank you for the bug report. I've transferred this issue to the iOS repository.
Unfortunately, the "Content Unavailable" error could mean any error during directory listing. In order to analyze this error, the log files would be very helpful.
@infosecguard @RceMBEdIxiCl Can you both please go to the settings in Cryptomator and use the "Send Log Files" functionality? Thank you!
If you want, you can also go through the log files of org.cryptomator.ios.fileprovider yourselves and only post the relevant lines, where an error occurred.
@tobihagemann i´ve extracted the error Lines from your named logfile.
Note
- issue happens also on iOS 17.4
- If you have two Vaults opened within file App on iOS / iPad OS 17.4 issue rotate from vault one to vault two.
2024/03/12 11:59:24:867 enumerateItems failed with: Error Domain=NSURLErrorDomain Code=-996 "Kommunikation mit Hintergrundübertragungsdienst nicht möglich." UserInfo={_NSURLErrorRelatedURLSessionTaskErrorKey=(
"BackgroundDataTask <4E559A92-9891-425E-A633-BDA28B778082>.<1>"
), NSLocalizedDescription=Kommunikation mit Hintergrundübertragungsdienst nicht möglich., _NSURLErrorFailingURLSessionTaskErrorKey=BackgroundDataTask <4E559A92-9891-425E-A633-BDA28B778082>.<1>} for identifier: NSFileProviderItemIdentifier(_rawValue: NSFileProviderRootContainerItemIdentifier)
2024/03/12 11:59:27:004 enumerateItems failed with: Error Domain=NSURLErrorDomain Code=-996 "Kommunikation mit Hintergrundübertragungsdienst nicht möglich." UserInfo={_NSURLErrorRelatedURLSessionTaskErrorKey=(
"BackgroundDataTask <83635451-56F4-459F-9C93-A818A3F601B6>.<2>"
), NSLocalizedDescription=Kommunikation mit Hintergrundübertragungsdienst nicht möglich., _NSURLErrorFailingURLSessionTaskErrorKey=BackgroundDataTask <83635451-56F4-459F-9C93-A818A3F601B6>.<2>} for identifier: NSFileProviderItemIdentifier(_rawValue: NSFileProviderRootContainerItemIdentifier)
2024/03/12 11:59:28:134 enumerateItems failed with: Error Domain=NSURLErrorDomain Code=-996 "Kommunikation mit Hintergrundübertragungsdienst nicht möglich." UserInfo={_NSURLErrorRelatedURLSessionTaskErrorKey=(
"BackgroundDataTask <D3867C08-C6B3-4155-B32F-80800D4FA9F5>.<3>"
), NSLocalizedDescription=Kommunikation mit Hintergrundübertragungsdienst nicht möglich., _NSURLErrorFailingURLSessionTaskErrorKey=BackgroundDataTask <D3867C08-C6B3-4155-B32F-80800D4FA9F5>.<3>} for identifier: NSFileProviderItemIdentifier(_rawValue: NSFileProviderRootContainerItemIdentifier)
2024/03/12 11:59:40:680 enumerateItems failed with: Error Domain=NSURLErrorDomain Code=-996 "Kommunikation mit Hintergrundübertragungsdienst nicht möglich." UserInfo={_NSURLErrorRelatedURLSessionTaskErrorKey=(
"BackgroundDataTask <A7F63C4C-C2F8-4EA3-B24F-90447685BA03>.<4>"
), NSLocalizedDescription=Kommunikation mit Hintergrundübertragungsdienst nicht möglich., _NSURLErrorFailingURLSessionTaskErrorKey=BackgroundDataTask <A7F63C4C-C2F8-4EA3-B24F-90447685BA03>.<4>} for identifier: NSFileProviderItemIdentifier(_rawValue: NSFileProviderRootContainerItemIdentifier)
2024/03/12 11:59:41:896 enumerateItems failed with: Error Domain=NSURLErrorDomain Code=-996 "Kommunikation mit Hintergrundübertragungsdienst nicht möglich." UserInfo={_NSURLErrorRelatedURLSessionTaskErrorKey=(
"BackgroundDataTask <81A56823-62D2-4B32-BFB5-A8DE2C02EAFE>.<5>"
), NSLocalizedDescription=Kommunikation mit Hintergrundübertragungsdienst nicht möglich., _NSURLErrorFailingURLSessionTaskErrorKey=BackgroundDataTask <81A56823-62D2-4B32-BFB5-A8DE2C02EAFE>.<5>} for identifier: NSFileProviderItemIdentifier(_rawValue: NSFileProviderRootContainerItemIdentifier)
2024/03/12 11:59:42:697 enumerateItems failed with: Error Domain=NSURLErrorDomain Code=-996 "Kommunikation mit Hintergrundübertragungsdienst nicht möglich." UserInfo={_NSURLErrorRelatedURLSessionTaskErrorKey=(
"BackgroundDataTask <F50911A0-C93A-4CA0-AA8C-136369F48ABA>.<6>"
), NSLocalizedDescription=Kommunikation mit Hintergrundübertragungsdienst nicht möglich., _NSURLErrorFailingURLSessionTaskErrorKey=BackgroundDataTask <F50911A0-C93A-4CA0-AA8C-136369F48ABA>.<6>} for identifier: NSFileProviderItemIdentifier(_rawValue: NSFileProviderRootContainerItemIdentifier)
2024/03/12 11:59:51:037 enumerateItems getAdapter failed with: defaultLock for identifier: NSFileProviderItemIdentifier(_rawValue: NSFileProviderRootContainerItemIdentifier)
2024/03/12 11:59:54:788 enumerateItems failed with: Error Domain=NSURLErrorDomain Code=-996 "Kommunikation mit Hintergrundübertragungsdienst nicht möglich." UserInfo={_NSURLErrorRelatedURLSessionTaskErrorKey=(
"BackgroundDataTask <50F0C23A-2BB6-472A-975E-DF81DE0485BB>.<7>"
), NSLocalizedDescription=Kommunikation mit Hintergrundübertragungsdienst nicht möglich., _NSURLErrorFailingURLSessionTaskErrorKey=BackgroundDataTask <50F0C23A-2BB6-472A-975E-DF81DE0485BB>.<7>} for identifier: NSFileProviderItemIdentifier(_rawValue: NSFileProviderRootContainerItemIdentifier)
2024/03/12 11:59:57:859 enumerateItems getAdapter failed with: defaultLock for identifier: NSFileProviderItemIdentifier(_rawValue: NSFileProviderRootContainerItemIdentifier)
@tobihagemann
Log extract as requested:
2024/03/12 12:10:16:483 enumerateItems failed with: Error Domain=NSURLErrorDomain Code=-996 "Could not communicate with background transfer service" UserInfo={_NSURLErrorRelatedURLSessionTaskErrorKey=(
"BackgroundDataTask <9AA42CE4-0433-4EA4-B20B-36B37B63EAA5>.<33>"
), NSLocalizedDescription=Could not communicate with background transfer service, _NSURLErrorFailingURLSessionTaskErrorKey=BackgroundDataTask <9AA42CE4-0433-4EA4-B20B-36B37B63EAA5>.<33>} for identifier: NSFileProviderItemIdentifier(_rawValue: NSFileProviderRootContainerItemIdentifier)
2024/03/12 12:10:19:264 enumerateItems failed with: Error Domain=NSURLErrorDomain Code=-996 "Could not communicate with background transfer service" UserInfo={_NSURLErrorRelatedURLSessionTaskErrorKey=(
"BackgroundDataTask <F57D84F8-8B3E-43F6-9E4A-12D7D320BD2D>.<34>"
), NSLocalizedDescription=Could not communicate with background transfer service, _NSURLErrorFailingURLSessionTaskErrorKey=BackgroundDataTask <F57D84F8-8B3E-43F6-9E4A-12D7D320BD2D>.<34>} for identifier: NSFileProviderItemIdentifier(_rawValue: NSFileProviderRootContainerItemIdentifier)
2024/03/12 12:10:20:140 enumerateItems failed with: Error Domain=NSURLErrorDomain Code=-996 "Could not communicate with background transfer service" UserInfo={_NSURLErrorRelatedURLSessionTaskErrorKey=(
"BackgroundDataTask <E1BBC4C9-B02C-4286-9809-9C13A077EAD4>.<35>"
), NSLocalizedDescription=Could not communicate with background transfer service, _NSURLErrorFailingURLSessionTaskErrorKey=BackgroundDataTask <E1BBC4C9-B02C-4286-9809-9C13A077EAD4>.<35>} for identifier: NSFileProviderItemIdentifier(_rawValue: NSFileProviderRootContainerItemIdentifier)
Cryptomator for iPad Version 2.5.1 (1212), released today 15/3/2024, does NOT resolve this issue.
Same for OneDrive 2.5.1 on iOS and iPad OS doesn't fix the issue.
Yes, the update didn't address this issue. Thank you for the log files. From them alone, I can't tell why it results in an error. We will look into it and try to reproduce the error.
This error means that we try to use another background URLSession with the same identifier.
I think I've already know why this happens after looking at the code. I'll open a small PR.
Does that mean a fix will be released soon? Pls remember issue also exist on other Cloud storage providers, like MS OneDrive in my specific case. Thanks guys!
Does that mean a fix will be released soon? Pls remember issue also exist on other Cloud storage providers, like MS OneDrive in my specific case. Thanks guys!
My small PR is only related to the issue which I found for Google Drive. But I'm already trying to find out why this happens for a single account with OneDrive.
To precise my issue, I guess you mean single OneDrive Account and I've two Cryptomator Vaults save on my OneDrive.
Just to keep things separate, I'm labeling this as a Google Drive issue, since @infosecguard opened it and described it pretty specifically for Google Drive. Thank you, @phil1995, for finding the cause and submitting a PR so quickly.
@RceMBEdIxiCl Would you mind opening a new bug report so we can investigate this more specifically for OneDrive as well?
@tobihagemann for sure, I´ve opened up a dedicated bug report see #345
@infosecguard fyi, Cryptomator Team identified the underlying issue why multiple vaults don't work any longer. For more details see my Bug report #345
@RceMBEdIxiCl
Thanks for the heads-up regarding #345. Comment posted.
Yes, the update didn't address this issue. Thank you for the log files. From them alone, I can't tell why it results in an error. We will look into it and try to reproduce the error.
@tobihagemann
Is any progress being made towards resolving this issue - and releasing an updated version of Cryptomator for iPadOS/iOS?
Hi @infosecguard, I've already created two PRs to address this issue, which are not yet merged. Please keep in mind that they require extensive testing since this touches the main functionality of the app and we should ensure that this does not break the functionality for older iOS versions.
@tobihagemann
You've CLOSED the ticket as complete - yet the issue remains UNRESOLVED.
When will you release a fixed version, if only as TestFlight Beta?
I should've added a comment. We've completed the development tasks (that's why I've closed the issue), and we're preparing an update right now. Actually, I've just uploaded it to TestFlight, and it's now being reviewed by Apple. Are you already part of the TestFlight group?
Thank you for clarification of current status.
Insofar as I aware, yes. I have received previous TestFlight betas.
Edit: I have just checked TestFlight... the prior Cryptomator 2.5.1 (1210) beta remains visible, expiring in 56 days.
As I've mentioned, the TestFlight build has to be reviewed by Apple. But it shouldn't take too long. 🤞
@ tobihagemann
I have just loaded the new TestFlight beta 2.5.2 (1226). Initial testing suggests that this beta resolves the iPadOS 17.4 bug #342 (Content Unavailable) - but seemingly introduces another significant bug...
When a Cryptomator Vault is accessed, the Vault is READ ONLY!
Can you please go to the Cryptomator settings? If you see an entry "Unlock Full Version", just proceed to "buy" the full version. In a TestFlight context, you don't have to pay anything, but you still have to unlock it even if you already unlocked the full version in the App Store version, because it's a different context.
Hi
Further testing since my earlier post identified that my existing full licence is not being restored - and, presumably, the App is running in its Read Only Demo mode. From Cryptomator settings, the App expects me to purchase another full licence...
Hi
Further testing since my earlier post identified that my existing full licence is not being restored - and, presumably, the App is running in its Read Only Demo mode. From Cryptomator settings, the App expects me to purchase another full licence...
Yes because it's the TestFlight version which as @tobihagemann already explained is a different version. You can just tap on something to buy and you would see that it does not cost anything. It's that way so that TestFlight users also can test the flow to purchase something without actually spending money. That's intended by Apple and a special TestFlight feature.
Production version loaded - and recognises my existing full licence.
Issue #342 appears to have been resolved. Thank you for getting this issue with iPadOS 17.4.x fixed.
