Есть ли «забыть» vpn слушатель? - PullRequest
0 голосов
/ 28 марта 2019

Я занимаюсь разработкой приложения, которое реализует службу VPN, и я хочу слушать, когда пользователь нажал «Забыть VPN» в службе VPN моего приложения в настройках Android.

Есть ли способ сделать это?

Ответы [ 2 ]

1 голос
/ 28 марта 2019

При проверке исходного кода VpnSettings # deleteProfile () - ничего не транслируется.

Единственным доступным обратным вызовом является VpnService # onRevoke () ; как указано в документации:

Вызывается при отзыве приложения. В этот момент интерфейс VPN уже деактивирован системой. Приложение должно закрыть файловый дескриптор и корректно завершить работу. Реализация этого метода по умолчанию вызывает Service#stopSelf().

1 голос
/ 28 марта 2019

Нет, вы можете использовать Intent prepare = VpnService.prepare(this), если намерение пусто, тогда ваш VPN создается в настройках, иначе вызовите startActivityForResult(prepare, REQUEST_VPN) для создания VPN. Вы можете использовать нулевую проверку prepare == null, чтобы узнать, создан ли VPN или нет. Надеюсь, это поможет вам.

...