nextcloud / nextcloud/talk-android

Implement new sceen lock behavior

Open
#3,815 7 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

bug discussion
Dominant language
Kotlin
Stars
739
Forks
321
Avg merge
14h 59m
Merged PRs (30d)
151

Description

Steps to reproduce

Enable Settings --> Screen lock, and set an inactivity timeout of 30 seconds.

When going in and out of the application, it does not consistently prompt for authentication, even if the timeout period has definitely elapsed.

The issue appears to be tied to SecurityUtils.checkIfWeAreAuthenticated(timeout)

The comment in the function says

            // Try encrypting something, it will only work if the user authenticated within
            // the last AUTHENTICATION_DURATION_SECONDS seconds.

I do not believe that this works as expected.

Expected behaviour

The user should be consistently prompted for authentication if the timeout has expired.

Actual behaviour

The user may or may not be prompted for authentication even though the timeout has expired.

Device brand and model

Any

Android version

14

Nextcloud Talk app version

master

Nextcloud server version

No response

Talk version

No response

Custom Signaling server configured

None

Custom TURN server configured

None

Custom STUN server configured

None

Android logs

No response

Server log

No response

Additional information

No response

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with SecurityUtils.checkIfWeAreAuthenticated(timeout) and its authentication-duration comment, then trace how screen-lock transitions invoke it when leaving and re-entering the app. Reproduce the 30-second timeout case on Android 14 and verify that authentication is requested consistently after the timeout expires.

Written by the indexing model from the issue text.

Assessment

Tech stack
android, kotlin
Domain
authentication, mobile, security
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.