owncloud / android

:phone: The ownCloud Android App
GNU General Public License v2.0
3.81k stars 3.05k forks source link

[BUG] Android client can't login #3868

Open MMan1982 opened 1 year ago

MMan1982 commented 1 year ago

Hi,

Client is a Redmi 9 stock rom,client is the latest. Android 11. It throws ssl error,but in browser it works on the same phone. Debug log.follows:

D: 2023-01-22 20:43:54:543(LogsProvider.kt:46) .startLogging()release start logging 3.0.1 5e553f078 V: 2023-01-22 20:43:57:586(MainApp.kt:159) $onCreate.onActivityDestroyed()LoginActivity onDestroy() ending V: 2023-01-22 20:43:57:601(MainApp.kt:142) $onCreate.onActivityPaused()SettingsActivity onPause() ending V: 2023-01-22 20:43:57:618(MainApp.kt:159) $onCreate.onActivityDestroyed()FileDisplayActivity onDestroy() ending V: 2023-01-22 20:43:57:639(FileDisplayActivity.kt:173) .onCreate()onCreate() start D: 2023-01-22 20:43:57:641(MainApp.kt:102) $onCreate.onActivityCreated()FileDisplayActivity onCreate(Bundle) starting I: 2023-01-22 20:43:57:651(AccountAuthenticator.java:91) .addAccount()Adding account with type owncloud and auth token null V: 2023-01-22 20:43:57:716(FileDisplayActivity.kt:239) .onCreate()onCreate() end D: 2023-01-22 20:43:57:718(AppRater.java:53) .appLaunched()The app has been launched 3 times D: 2023-01-22 20:43:57:720(AppRater.java:69) .appLaunched()The number of launches already exceed 2, the default number of launches, so let's check some dates D: 2023-01-22 20:43:57:722(AppRater.java:71) .appLaunched()Current moment is 1674416637721 D: 2023-01-22 20:43:57:723(AppRater.java:72) .appLaunched()The date of the first launch + days until prompt is 1674416416398172800000 D: 2023-01-22 20:43:57:724(AppRater.java:74) .appLaunched()The date of the neutral click + days until neutral click is 086400000 V: 2023-01-22 20:43:57:728(MainApp.kt:129) $onCreate.onActivityStarted()FileDisplayActivity onStart() starting D: 2023-01-22 20:43:57:733(DrawerActivity.kt:393) .updateQuota()Update Quota V: 2023-01-22 20:43:57:738(FileDisplayActivity.kt:686) .onResume()onResume() start V: 2023-01-22 20:43:57:739(MainApp.kt:138) $onCreate.onActivityResumed()FileDisplayActivity onResume() starting W: 2023-01-22 20:43:57:741(DrawerActivity.kt:505) .setDrawerMenuItemChecked()setDrawerMenuItemChecked has been called with invalid menu-item-ID V: 2023-01-22 20:43:57:742(FileDisplayActivity.kt:702) .onResume()onResume() end V: 2023-01-22 20:43:57:749(OperationsService.java:120) .onDestroy()Destroying service D: 2023-01-22 20:43:57:803(OperationsService.java:92) .onCreate()Creating service V: 2023-01-22 20:43:57:810(FileDisplayActivity.kt:706) .onPause()onPause() start V: 2023-01-22 20:43:57:812(MainApp.kt:142) $onCreate.onActivityPaused()FileDisplayActivity onPause() ending V: 2023-01-22 20:43:57:813(FileDisplayActivity.kt:717) .onPause()onPause() end D: 2023-01-22 20:43:57:830(FileActivity.java:385) $OperationsServiceConnection.onServiceConnected()Operations service connected D: 2023-01-22 20:43:57:837(MainApp.kt:102) $onCreate.onActivityCreated()LoginActivity onCreate(Bundle) starting V: 2023-01-22 20:43:57:890(MainApp.kt:129) $onCreate.onActivityStarted()LoginActivity onStart() starting V: 2023-01-22 20:43:57:891(MainApp.kt:138) $onCreate.onActivityResumed()LoginActivity onResume() starting V: 2023-01-22 20:43:58:007(MainApp.kt:146) $onCreate.onActivityStopped()FileDisplayActivity onStop() ending V: 2023-01-22 20:43:58:009(FileDisplayActivity.kt:672) .onSaveInstanceState()onSaveInstanceState() start V: 2023-01-22 20:43:58:012(MainApp.kt:155) $onCreate.onActivitySaveInstanceState()FileDisplayActivity onSaveInstanceState(Bundle) starting V: 2023-01-22 20:43:58:013(FileDisplayActivity.kt:682) .onSaveInstanceState()onSaveInstanceState() end V: 2023-01-22 20:43:58:463(MainApp.kt:146) $onCreate.onActivityStopped()SettingsActivity onStop() ending V: 2023-01-22 20:43:58:466(MainApp.kt:159) $onCreate.onActivityDestroyed()SettingsActivity onDestroy() ending D: 2023-01-22 20:44:07:164(OwnCloudClient.java:90) .()#1Creating OwnCloudClient D: 2023-01-22 20:44:07:169(OwnCloudClient.java:128) .saveExecuteHttpMethod()Executing in request with id 3b5b6374-7c37-440c-a6ec-aa07fd449784 D: 2023-01-22 20:45:07:452(LogBuilder.kt:38) .logHttp()[Network, request] [info] [3b5b6374-7c37-440c-a6ec-aa07fd449784] Type: GET URL: https://******81/status.php D: 2023-01-22 20:45:07:461(LogBuilder.kt:38) .logHttp()[Network, request] [header] [3b5b6374-7c37-440c-a6ec-aa07fd449784] X-Request-ID: 3b5b6374-7c37-440c-a6ec-aa07fd449784 D: 2023-01-22 20:45:07:463(LogBuilder.kt:38) .logHttp()[Network, request] [header] [3b5b6374-7c37-440c-a6ec-aa07fd449784] User-Agent: Mozilla/5.0 (Android) ownCloud-android/3.0.1 D: 2023-01-22 20:45:07:465(LogBuilder.kt:38) .logHttp()[Network, request] [header] [3b5b6374-7c37-440c-a6ec-aa07fd449784] Accept-Encoding: identity D: 2023-01-22 20:45:07:466(LogBuilder.kt:38) .logHttp()[Network, request] [header] [3b5b6374-7c37-440c-a6ec-aa07fd449784] Host: **t:81 D: 2023-01-22 20:45:07:468(LogBuilder.kt:38) .logHttp()[Network, request] [header] [3b5b6374-7c37-440c-a6ec-aa07fd449784] Connection: Keep-Alive D: 2023-01-22 20:45:07:469(LogBuilder.kt:38) .logHttp()[Network, request] [body] [3b5b6374-7c37-440c-a6ec-aa07fd449784] Empty body E: 2023-01-22 20:45:07:487(RemoteOperationResult.java:119) .()--------------------------------- Create RemoteOperationResult from exception. Message: SSLException: Write error: ssl=0x7e27474008: I/O error during system call, Broken pipe Stacktrace: javax.net.ssl.SSLException: Write error: ssl=0x7e27474008: I/O error during system call, Broken pipe at com.android.org.conscrypt.NativeCrypto.SSL_write(Native Method) at com.android.org.conscrypt.NativeSsl.write(NativeSsl.java:426) at com.android.org.conscrypt.ConscryptFileDescriptorSocket$SSLOutputStream.write(ConscryptFileDescriptorSocket.java:626) at okio.OutputStreamSink.write(JvmOkio.kt:56) at okio.AsyncTimeout$sink$1.write(AsyncTimeout.kt:99) at okio.RealBufferedSink.flush(RealBufferedSink.kt:267) at okhttp3.internal.http1.Http1ExchangeCodec.finishRequest(Http1ExchangeCodec.kt:155) at okhttp3.internal.connection.Exchange.finishRequest(Exchange.kt:91) at okhttp3.internal.http.CallServerInterceptor.intercept(CallServerInterceptor.kt:76) at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:100) at com.owncloud.android.lib.common.http.DummyInterceptor.intercept(DummyInterceptor.kt:30) at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:100) at com.owncloud.android.lib.common.http.LogInterceptor.intercept(LogInterceptor.kt:59) at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:100) at okhttp3.internal.connection.ConnectInterceptor.intercept(ConnectInterceptor.kt:34) at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:100) at okhttp3.internal.cache.CacheInterceptor.intercept(CacheInterceptor.kt:82) at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:100) at okhttp3.internal.http.BridgeInterceptor.intercept(BridgeInterceptor.kt:83) at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:100) at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.kt:76) at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:100) at okhttp3.internal.connection.RealCall.getResponseWithInterceptorChain$okhttp(RealCall.kt:197) at okhttp3.internal.connection.RealCall.execute(RealCall.kt:148) at com.owncloud.android.lib.common.http.methods.nonwebdav.HttpMethod.onExecute(HttpMethod.kt:44) at com.owncloud.android.lib.common.http.methods.nonwebdav.GetMethod.onExecute(GetMethod.kt:41) at com.owncloud.android.lib.common.http.methods.HttpBaseMethod.execute(HttpBaseMethod.kt:75) at com.owncloud.android.lib.common.OwnCloudClient.saveExecuteHttpMethod(OwnCloudClient.java:136) at com.owncloud.android.lib.common.OwnCloudClient.executeHttpMethod(OwnCloudClient.java:106) at com.owncloud.android.lib.resources.status.StatusRequester.request(StatusRequester.kt:85) at com.owncloud.android.lib.resources.status.GetRemoteStatusOperation.tryToConnect(GetRemoteStatusOperation.kt:61) at com.owncloud.android.lib.resources.status.GetRemoteStatusOperation.run(GetRemoteStatusOperation.kt:49) at com.owncloud.android.lib.common.operations.RemoteOperation.runOperation(RemoteOperation.java:264) at com.owncloud.android.lib.common.operations.RemoteOperation.execute(RemoteOperation.java:229) at com.owncloud.android.lib.resources.status.services.implementation.OCServerInfoService.getRemoteStatus(OCServerInfoService.kt:53) at com.owncloud.android.data.server.datasources.implementation.OCRemoteServerInfoDataSource.getRemoteStatus(OCRemoteServerInfoDataSource.kt:77) at com.owncloud.android.data.server.datasources.implementation.OCRemoteServerInfoDataSource.getServerInfo(OCRemoteServerInfoDataSource.kt:92) at com.owncloud.android.data.server.repository.OCServerInfoRepository.getServerInfo(OCServerInfoRepository.kt:31) at com.owncloud.android.domain.server.usecases.GetServerInfoAsyncUseCase.run(GetServerInfoAsyncUseCase.kt:30) at com.owncloud.android.domain.server.usecases.GetServerInfoAsyncUseCase.run(GetServerInfoAsyncUseCase.kt:26) at com.owncloud.android.domain.BaseUseCaseWithResult.execute(BaseUseCaseWithResult.kt:30) at com.owncloud.android.extensions.ViewModelExt$runUseCaseWithResult$1.invokeSuspend(ViewModelExt.kt:62) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33) at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106) at kotlinx.coroutines.internal.LimitedDispatcher.run(LimitedDispatcher.kt:42) at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt:95) at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:570) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:749) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:677) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:664)


D: 2023-01-22 20:45:07:498(ViewModelExt.kt:64) $runUseCaseWithResult.invokeSuspend()Use case executed: GetServerInfoAsyncUseCase with result: Error(throwable=com.owncloud.android.domain.exceptions.SSLErrorException) V: 2023-01-22 20:45:09:084(MainApp.kt:142) $onCreate.onActivityPaused()LoginActivity onPause() ending D: 2023-01-22 20:45:09:110(MainApp.kt:102) $onCreate.onActivityCreated()SettingsActivity onCreate(Bundle) starting V: 2023-01-22 20:45:09:141(MainApp.kt:129) $onCreate.onActivityStarted()SettingsActivity onStart() starting V: 2023-01-22 20:45:09:153(MainApp.kt:138) $onCreate.onActivityResumed()SettingsActivity onResume() starting V: 2023-01-22 20:45:09:770(MainApp.kt:146) $onCreate.onActivityStopped()LoginActivity onStop() ending V: 2023-01-22 20:45:09:773(MainApp.kt:155) $onCreate.onActivitySaveInstanceState()LoginActivity onSaveInstanceState(Bundle) starting V: 2023-01-22 20:45:12:474(MainApp.kt:142) $onCreate.onActivityPaused()SettingsActivity onPause() ending D: 2023-01-22 20:45:12:493(MainApp.kt:102) $onCreate.onActivityCreated()LogsListActivity onCreate(Bundle) starting V: 2023-01-22 20:45:12:524(MainApp.kt:129) $onCreate.onActivityStarted()LogsListActivity onStart() starting V: 2023-01-22 20:45:12:525(MainApp.kt:138) $onCreate.onActivityResumed()LogsListActivity onResume() starting V: 2023-01-22 20:45:13:102(MainApp.kt:146) $onCreate.onActivityStopped()SettingsActivity onStop() ending V: 2023-01-22 20:45:13:104(MainApp.kt:155) $onCreate.onActivitySaveInstanceState()SettingsActivity onSaveInstanceState(Bundle) starting V: 2023-01-22 20:45:14:481(MainApp.kt:142) $onCreate.onActivityPaused()LogsListActivity onPause() ending V: 2023-01-22 20:45:19:263(MainApp.kt:146) $onCreate.onActivityStopped()LogsListActivity onStop() ending V: 2023-01-22 20:45:19:273(MainApp.kt:155) $onCreate.onActivitySaveInstanceState()LogsListActivity onSaveInstanceState(Bundle) starting

jesmrec commented 1 year ago

Could you send the server URL to android-app@owncloud.com? so, we can take a deeper look about what's going on.

MMan1982 commented 1 year ago

Sent.

jesmrec commented 1 year ago

Thanks @MMan1982. Checking the URL, is this problem preventing you to connect? I mean, checking with some devices, URL is correctly connected and Secure connection established displayed.

Do you have any proxy or middleware between your device and server that could cause the problem?

MMan1982 commented 1 year ago

Hi,

No,i just have a port forwarding directly to my raspberry that runs owncloud. Port forwarding setup on my ISP router.

jesmrec commented 1 year ago

will need research... not straightforward.

MMan1982 commented 1 year ago

Hi,

Sorry,i have a Mikrotik hap ac2 after my isp router,but it has used as a bridge,no fw rules on it. And my phone working perfectly with the latest app,only Redmi 9 has this problem with older android version.

jesmrec commented 1 year ago

which android version?

MMan1982 commented 1 year ago

# received_452585183626290

MMan1982 commented 1 year ago

Android 10 but she doesn't want upgrade.

nunodsfernandes commented 1 year ago

Hi all,

I can reproduce same issue on Mi9T.

Owncloud client just sits there and doesn't do anything after login credentials are inserted. Then times out and closes.

I've got DDNS forwarding on my router also, and it's working perfectly on a OnePlus Nord N10.

abelgardep commented 1 year ago

Hey, @MMan1982 @nunodsfernandes thanks for reporting this issue.

We need a little bit more info. Is this issue also reproducible with v2.21.2 or only after upgrading to v3.0? You can get the v2.21.2 apk from assets on https://github.com/owncloud/android/releases/tag/oc-android-2.21.2

thanks in advance

MMan1982 commented 1 year ago

Hi,

Confirmed it works with the linked version perfectly!;)

abelgardep commented 1 year ago

Hi @nunodsfernandes @MMan1982,

today I was able to use a Mi9T( forgot to check the android version and so on 😞) so I tried to login into any server.

First I got some issues with the Mi Browser and the certificate of the server I tried to connect to, but then I was able to log in without problems. I was not able to reproduce this issue.

As I can see from the logs, the app can not even connect with the server in the first place. So I ask for some more information. Could you try to connect to the demo server (url: https://demo.owncloud.org, user: test, password: test)?