fbarthelery / geekttrss

Geekttrss is an Tiny Tiny Rss reader application with transparent offline mode for the Android platform
GNU General Public License v3.0
53 stars 4 forks source link

"Error: Unknown Error" trying to log in #10

Closed simonwiles closed 5 years ago

simonwiles commented 5 years ago

I'm unable to log in, with Geekttrss simply reporting "Error: Unknown Error".

adb logcat shows streams and streams of

View    : requestLayout() improperly called by com.google.android.material.textfield.TextInputEditText{ba75528 VFED..CL. ......ID 0,0-840,147 #7f09016e app:id/url} during layout: running second layout pass

for every text input on the login screen, and then when I hit "login", all I see is:

 Retrofit: calling TinyRssApi.login [Anonymized arguments]

appear twice.

On Android 9, Geekttrss from the Play Store (opted in to beta, but it seems to be the same version?), and my tt-rss server is available at a regular http url with basic http-auth enabled.

Do you have any suggestions I might try, or ideas for places I might look to get more information to help work out what's going wrong?

Thanks!

Edit: when I back out of the app, this appear in the logcat output:

06-02 17:23:51.127 21170 21170 W AccountManager: Unable to get auth token
06-02 17:23:51.127 21170 21170 W AccountManager: android.accounts.OperationCanceledException
06-02 17:23:51.127 21170 21170 W AccountManager:    at android.accounts.AccountManager$AmsTask.internalGetResult(AccountManager.java:2280)
06-02 17:23:51.127 21170 21170 W AccountManager:    at android.accounts.AccountManager$AmsTask.getResult(AccountManager.java:2309)
06-02 17:23:51.127 21170 21170 W AccountManager:    at android.accounts.AccountManager$AmsTask.getResult(AccountManager.java:2227)
06-02 17:23:51.127 21170 21170 W AccountManager:    at com.geekorum.ttrss.articles_list.TtrssAccountViewModel$startSelectAccountActivity$callback$1.run(TtrssAccountViewModel.kt:1)
06-02 17:23:51.127 21170 21170 W AccountManager:    at android.accounts.AccountManager$17.run(AccountManager.java:2184)
06-02 17:23:51.127 21170 21170 W AccountManager:    at android.os.Handler.handleCallback(Handler.java:873)
06-02 17:23:51.127 21170 21170 W AccountManager:    at android.os.Handler.dispatchMessage(Handler.java:99)
06-02 17:23:51.127 21170 21170 W AccountManager:    at android.os.Looper.loop(Looper.java:193)
06-02 17:23:51.127 21170 21170 W AccountManager:    at android.app.ActivityThread.main(ActivityThread.java:6718)
06-02 17:23:51.127 21170 21170 W AccountManager:    at java.lang.reflect.Method.invoke(Native Method)
06-02 17:23:51.127 21170 21170 W AccountManager:    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
06-02 17:23:51.127 21170 21170 W AccountManager:    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
06-02 17:23:51.128 21170 21170 W null    : Unable to get auth token
06-02 17:23:51.128 21170 21170 W null    : android.accounts.OperationCanceledException
06-02 17:23:51.128 21170 21170 W null    :  at android.accounts.AccountManager$AmsTask.internalGetResult(AccountManager.java:2280)
06-02 17:23:51.128 21170 21170 W null    :  at android.accounts.AccountManager$AmsTask.getResult(AccountManager.java:2309)
06-02 17:23:51.128 21170 21170 W null    :  at android.accounts.AccountManager$AmsTask.getResult(AccountManager.java:2227)
06-02 17:23:51.128 21170 21170 W null    :  at com.geekorum.ttrss.articles_list.TtrssAccountViewModel$startSelectAccountActivity$callback$1.run(TtrssAccountViewModel.kt:1)
06-02 17:23:51.128 21170 21170 W null    :  at android.accounts.AccountManager$17.run(AccountManager.java:2184)
06-02 17:23:51.128 21170 21170 W null    :  at android.os.Handler.handleCallback(Handler.java:873)
06-02 17:23:51.128 21170 21170 W null    :  at android.os.Handler.dispatchMessage(Handler.java:99)
06-02 17:23:51.128 21170 21170 W null    :  at android.os.Looper.loop(Looper.java:193)
06-02 17:23:51.128 21170 21170 W null    :  at android.app.ActivityThread.main(ActivityThread.java:6718)
06-02 17:23:51.128 21170 21170 W null    :  at java.lang.reflect.Method.invoke(Native Method)
06-02 17:23:51.128 21170 21170 W null    :  at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
06-02 17:23:51.128 21170 21170 W null    :  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
06-02 17:23:51.152  2340  2340 D APP     : 1559521431152  com.geekorum.ttrss

Not sure if that helps any?

fbarthelery commented 5 years ago

On Android 9, Geekttrss from the Play Store (opted in to beta, but it seems to be the same version?), and my tt-rss server is available at a regular http url with basic http-auth enabled.

That's your issue. On Android 9, cleartext traffic (http) is forbidden, so if you run on this version it won’t work if you don’t use https. source You can use https://letsencrypt.org/ to obtain a free certificate.

I have no plans to change the default behavior. Although, I should probably clarify this error.

simonwiles commented 5 years ago

Thanks very much -- that's all I needed to know. Clarifying the error would be very helpful :)

AeliusSaionji commented 1 year ago

I access my self hosted server via vpn ONLY. It's not accessible otherwise. A signed cert is not desired in my setup.

I've installed the foss version from izzy and am still getting the "cleartext forbidden" error. If there's a config option to disable it, I can't reach any options screen.

fbarthelery commented 1 year ago

It's not an something that you can change at runtime, and I'm not going to support it on my builds at it lowers the security for everyone else. So I'm afraid your only option so far is to modify and recompile the app yourself. You need to change this file following this chapter