stefan-niedermann / nextcloud-deck

📋 Android client for nextcloud deck app
https://play.google.com/store/apps/details?id=it.niedermann.nextcloud.deck.play
GNU General Public License v3.0
499 stars 53 forks source link

Nothing appears in the app, but no errors #877

Closed pmprog closed 3 years ago

pmprog commented 3 years ago

Please use GitHub reactions 👍 to show that you are affected by the same issue. Please don't comment if you have no relevant information to add!

Describe the bug My server is running Nextcloud 20.0.8, with Deck 1.2.5; The Nextcloud client app and Deck app are both installed from F-droid; and the Nextcloud app syncs to my phone fine. However, when I open Deck, and ask it to add my account, it just shows me nothing, no boards, no cards. If I try and add a board, it does nothing, not even reporting any errors.

Steps to reproduce the behavior:

  1. Start Deck App
  2. Click on 'Choose Account'
  3. Select existing nextcloud account, and click Ok
  4. Allow Nextcloud Deck to access Nextcloud account user@server
  5. Be presented with a blank screen, no boards

Expected behavior The boards to sync from the server onto the device

Screenshots

Versions

Smartphone (please complete the following information):

Stacktrace None available

desperateCoder commented 3 years ago

Hi @pmprog thanks for your report! I'll try to reproduce that tomorrow, I'm on bed already 😅

That's not something i've heard of though, maybe you could try just re-installing the app and just try again...

Sorry for the inconveniences!

pmprog commented 3 years ago

I've already done that... however, I have found something out.

My first board was called "8bit Computer?". Just by chance, I happened to remove the question mark at the end of the board name, now that board has appeared, but only that one.

I have just changed another board name (removing a single quote), that has now appeared after deleting my account and readding it.

So I've just deleted my account off the Deck, renamed every single board and tried to readd the account. The sync seems to be taking a long time, and it's late, so I'll check again in the morning.

But sounds like it's some unsupported characters, not sure which side the problem is on though. I'll see if the sync has finished in the morning

Edit: Oh, it's just finished, and all boards are present now

stefan-niedermann commented 3 years ago

There is at least one special character related issue in the deck server app. We will check this though, maybe we can find some else issues.

pmprog commented 3 years ago

Thinking about it this morning, the fact that the boards only appeared after editing, how does the sync work? If it was just an invalid character in one board, I would have expected it to work completely after the character was removed, but it almost feels like it had nothing to sync until I changed each title

desperateCoder commented 3 years ago

how does the sync work?

We indeed had some issues regarding etags in the past. These prevent loading data from the server, if nothing has changed. But this mechanism only applies to data we already know, so this can't be the problem here.

We first request all boards from the server and then dig deeper for lists and cards and so on. When you say that nothing is shown, I strongly suspect your server to do something wrong. In case it in fact delivers the list of boards, you'd either see some error if the app fails to process this data, or see at least the boards it has received. By what you wrote, I think we just received an empty list of boards, so our app was like "fine, nothing to do here..."

Do you know how you can get some Android-logs out of your phone? In case you do: That would make things much easier. In case your phone is rooted, it wouldn't even be that hard to get them.

pmprog commented 3 years ago

Yeah, certainly sounds like that's what has happened.

No, I'm afraid my phone isn't rooted. I did try some log reader apps though, but they didn't provide me with anything because I don't have root.

I would have thought though that removing and readding an account would have forced a full board list though?

Is it worth considering:

  1. A method to force a full refresh?
  2. A menu option to read the Deck logs, so that a rooted phone and third party app isn't required?

Arguably, I don't think we're going to find out any more from my setup, so happy to close this ticket, unless the two suggestions have any merit?

desperateCoder commented 3 years ago

I would have thought though that removing and readding an account would have forced a full board list though?

That's correct. I really think in this case your server refuses to provide the information properly.

A method to force a full refresh?

We already have an issue for that, but unfortunately not enough spare time yet to implement it. Will be added at some point!

A menu option to read the Deck logs, so that a rooted phone and third party app isn't required?

This is actually brilliant. @stefan-niedermann? Maybe worth adding this as a feature by extending the DeckLog with this toggleable option?

so happy to close this ticket

With your consent, I'd like to avoid this. We still have other options, e.g. building a "broken" version just for your case, which will "fail" while providing some useful information. If you like to help us and other users to make our app better, I'll provide anything needed to get this working, or at least get enough information, so we know exactly what's wrong here.

desperateCoder commented 3 years ago

Oh, it's just finished, and all boards are present now

Oops, didn't see that! So it completely works now?! If yes: what happens, if you change your boards title back to the "broken" version? Does the sync still work?

pmprog commented 3 years ago

Oops, didn't see that! So it completely works now?! If yes: what happens, if you change your boards title back to the "broken" version? Does the sync still work?

Yes, even adding the question mark back in works fine. So it certainly seems it's not a character issue, but rather the server reporting "Nothing new here" for some reason

With your consent, I'd like to avoid this. We still have other options, e.g. building a "broken" version just for your case, which will "fail" while providing some useful information. If you like to help us and other users to make our app better, I'll provide anything needed to get this working, or at least get enough information, so we know exactly what's wrong here.

If you want me to try a particular custom build, I can do, but seems potentially a lot of work for an issue that, as far as I know, seems limited to my instance, which itself now seems working. Personally, I think using that time to flesh out the logs and making them easy to access and copy would be the best thing to spend time on, as it'll potentially help solve more than this one issue.

desperateCoder commented 3 years ago

Yes, even adding the question mark back in works fine. So it certainly seems it's not a character issue, but rather the server reporting "Nothing new here" for some reason

Ok, I guess it was more like a server hickup then. I'm glad it works now!

If you want me to try a particular custom build, I can do, but seems potentially a lot of work for an issue that, as far as I know, seems limited to my instance, which itself now seems working.

My main motivation behind this offer was to get it working for you, so yes, won't make sense to build a custom APK, since you can't reproduce the issue anyways. Besides: It isn't that much work to do so, so don't worry :wink:

Personally, I think using that time to flesh out the logs and making them easy to access and copy would be the best thing to spend time on, as it'll potentially help solve more than this one issue.

I'll create a separate issue for this and close this one then. Thanks for your time responding to our questions, feel free to open an issue anytime here, in case you experience any further difficulties! Hope you like our app :blush:

Best regards, stay safe!