Describe the bug
Crash on first start connecting an accout.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
No crash
Smartphone (please complete the following information):
Stacktrace
App Version: 1.4.0
App Version Code: 1004000
App Flavor: fdroid
Deck Server Version: 0.6.4
Files App Version Code: 30110190
---
OS Version: 3.18.35+(1)
OS API Level: 25
Device: nicklaus_fn
Manufacturer: motorola
Model (and Product): Moto E (4) Plus (nicklaus_fn)
---
java.lang.IllegalArgumentException: capabilities endpoint returned no version string at all!
at it.niedermann.nextcloud.deck.api.JsonToEntityParser.parseCapabilities(JsonToEntityParser.java:354)
at it.niedermann.nextcloud.deck.api.JsonToEntityParser.parseJsonObject(JsonToEntityParser.java:52)
at it.niedermann.nextcloud.deck.api.NextcloudDeserializer.deserialize(NextcloudDeserializer.java:30)
at com.google.gson.internal.bind.TreeTypeAdapter.read(TreeTypeAdapter.java:69)
at com.google.gson.Gson.fromJson(Gson.java:932)
at com.google.gson.Gson.fromJson(Gson.java:897)
at com.nextcloud.android.sso.api.NextcloudAPI.performRequest(NextcloudAPI.java:101)
at com.nextcloud.android.sso.api.NextcloudAPI.lambda$performRequestObservable$0$NextcloudAPI(NextcloudAPI.java:86)
at com.nextcloud.android.sso.api.-$$Lambda$NextcloudAPI$yhhE-DMCe81fXF-bhjup5Tra-6o.subscribe(lambda)
at io.reactivex.internal.operators.observable.ObservableFromPublisher.subscribeActual(ObservableFromPublisher.java:31)
at io.reactivex.Observable.subscribe(Observable.java:12284)
at io.reactivex.internal.operators.observable.ObservableSubscribeOn$SubscribeTask.run(ObservableSubscribeOn.java:96)
at io.reactivex.Scheduler$DisposeTask.run(Scheduler.java:578)
at io.reactivex.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:66)
at io.reactivex.internal.schedulers.ScheduledRunnable.call(ScheduledRunnable.java:57)
at java.util.concurrent.FutureTask.run(FutureTask.java:237)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:272)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
at java.lang.Thread.run(Thread.java:761)
Hi @riweckr, thanks for your report.
seems like your server version is quite outdated. The rest API of that version doesn't provide some endpoints we need to work properly. Please try to update your deck app in the web UI, I guess this will fix your issue.
@desperateCoder the version could not be parsed at all, therefore i think that the 0.6.4 is just some initial state from somewhere. We support server 0.6.4 by the way, so it also should work in case he is really using this version.
Though your server didn't respond a correct version. Can you creaate a test account for us and send the credentials via email to [email protected] including a link to this issue, please?
My bad, the App was not installed on this server at all. Sorry!
But a more useful error message would be helpful. ;)
馃槅 no problem buddy, but you're absolutely right. But unfortunately it isn't that easy to tell apart if we have a bug or the server is broken. We have a huge fragmentation in versions of nextcloud, deck app and hosting (self signed certificates, ldap auth, you name it). But I'll try to give a hint at least.
Hopefully, it works for you now? Is everything fine?
I have added an enhanced error message with a hint to check whether or not the server side app is enabled :)
Most helpful comment
My bad, the App was not installed on this server at all. Sorry!
But a more useful error message would be helpful. ;)