Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG] Cannot complete DropBox connection process #2436

Open
1 task done
jmbreuer opened this issue Oct 9, 2023 · 1 comment · May be fixed by #2692
Open
1 task done

[BUG] Cannot complete DropBox connection process #2436

jmbreuer opened this issue Oct 9, 2023 · 1 comment · May be fixed by #2692
Labels

Comments

@jmbreuer
Copy link

jmbreuer commented Oct 9, 2023

Checks

  • I have read the FAQ section, searched the open issues, and still think this is a new bug.

Describe the bug you encountered:

  1. Click "Open File..." in Keepass2Droid
  2. Choose DropBox
  3. I get redirected to an embedded browser, negotiating API access with dropbox.com
  4. At the end of that process, there's a permission confirmation dialog, with options 'Cancel' and 'Allow'
  5. On clicking 'Allow', I get a "Webpage not available" error:

image

Describe what you expected to happen:

I expected to get sent back to Keepass2Android and continue to choose which file on that DropBox to open.

What version of Keepass2Android are you using?

1.09e-r7 (per App Info Details

Which version of Android are you on?

13 (LineageOS 20)

@jmbreuer jmbreuer added the bug label Oct 9, 2023
@hyproman
Copy link
Contributor

hyproman commented Oct 9, 2023

If I had to guess, based on poking around the code and the internet, I believe it to be an issue with Android 13 (SDK 33) vs the Dropbox SDK that KP2A uses (v.4.0.0). The entire thread is here; the minimal workaround is here. The "better" fix would be to update KP2A to use the latest Dropbox SDK.

The reasons I say it's a guess:

  • I can't actually reproduce this on Android 13 with the v1.09e-r7 production release (although I'm not running LineageOS, nor standard AOSP).
  • I can't build my own version of KP2A to debug further because I don't have access to the secrets needed to communicate with Dropbox as KP2A (the KP2A author has them and includes them when building the releases).
  • The URI you are seeing "db-i8shu..." is supposed to be handled internally by the Dropbox SDK code, but it isn't. The KP2A setup (apart from the linked workaround above) that is supposed to enable that interception looks correct.
  • The linked bug was documented post-v.4.0.0, so presumably v4.0.0 is affected.

Unfortunately at the moment even if I made the workaround change and submitted a PR, I couldn't test it, nor could I build an APK for you to test.

One thing you might want to try: if you don't already have the Dropbox App installed, you could try installing it and see if that fixes the flow. I think I read somewhere that the Dropbox SDK/App is smart enough to delegate the auth process to the App if it is installed.

@PhilippC PhilippC linked a pull request Oct 22, 2024 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants