SagerNet / SagerNet/sing-box

Bug: On Samsung devices, second VPN disconnect fails on official app v1.13.2

Open
#3,941 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
Go
Stars
38.2k
Forks
4.6k
Avg merge
19d 15h
Merged PRs (30d)
1

Description

Operating system

Android

System version

16

Installation type

sing-box for Android Graphical Client

If you are using a graphical client, please provide the version of the client.

1.13.2

Version
1.13.2
Description

Bug: On Samsung devices, second VPN disconnect fails on official app v1.13.2

Operating system

Android

System version

android 16

Installation type

sing-box for Android Graphical Client

If you are using a graphical client, please provide the version of the client.

1.13.2

Version
1.13.2
Description

Summary
On a Samsung phone, using the official released app v1.13.2 (not self-built), the first VPN connect/disconnect works, but after reconnecting, the second disconnect fails and the app process is terminated.

Environment
App version: 1.13.2 (official release)
Device: Samsung (One UI)
Reproducibility: High / consistent on second disconnect

Additional context

On this Samsung device, the same behavior is reproducible on official v1.12.24:
first disconnect causes app crash / process death.
This suggests the issue is not introduced by local modifications and is likely related to the repeated VPN stop lifecycle on Samsung/One UI.
https://github.com/user-attachments/assets/052858d2-1dda-4e2a-b3a2-c922af5742d8

Reproduction

Steps to Reproduce
Launch the app.
Connect VPN (success).
Disconnect VPN (first time, works).
Connect VPN again (success).
Disconnect VPN again.
Observe failure to disconnect normally;

Logs

Supporter
Integrity requirements
  • I confirm that I have read the documentation, understand the meaning of all the configuration items I wrote, and did not pile up seemingly useful options or default values.
  • I confirm that I have provided the server and client configuration files and process that can be reproduced locally, instead of a complicated client configuration file that has been stripped of sensitive data.
  • I confirm that I have provided the simplest configuration that can be used to reproduce the error I reported, instead of depending on remote servers, TUN, graphical interface clients, or other closed-source software.
  • I confirm that I have provided the complete configuration files and logs, rather than just providing parts I think are useful out of confidence in my own intelligence.
Reproduction

Steps to Reproduce
Launch the app.
Connect VPN (success).
Disconnect VPN (first time, works).
Connect VPN again (success).
Disconnect VPN again.
Observe failure to disconnect normally;

Logs

Supporter
Integrity requirements
  • I confirm that I have read the documentation, understand the meaning of all the configuration items I wrote, and did not pile up seemingly useful options or default values.
  • I confirm that I have provided the server and client configuration files and process that can be reproduced locally, instead of a complicated client configuration file that has been stripped of sensitive data.
  • I confirm that I have provided the simplest configuration that can be used to reproduce the error I reported, instead of depending on remote servers, TUN, graphical interface clients, or other closed-source software.
  • I confirm that I have provided the complete configuration files and logs, rather than just providing parts I think are useful out of confidence in my own intelligence.

Contributor guide

No contributing guide indexed for this repository

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 by reproducing the second connect/disconnect cycle on a Samsung device running Android 16 with the official sing-box Android app v1.13.2, and capture the missing crash or process-death logs. Inspect the Android graphical client's VPN stop lifecycle. Done means repeated VPN connect and disconnect cycles complete normally without terminating the app.

Written by the indexing model from the issue text.

Assessment

Tech stack
android
Domain
mobile-dev, networking
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.