The most common string shown previously was:
"Set always-on VPN?"
It's now a different string:
"Only allow connections through VPN?"
This makes more sense because the only way to get to this dialog in
stock Settings is by first enabling a specific VPN and afterwards
trying to set the same VPN to lockdown mode.
In this case the prompt should specifically refer to lockdown, not
having a VPN connection in general (because the user clearly already
has one).
Test: m Settings -j20, install a VPN, connect to it, open Settings > Network > Vpn > {VPN name} and select 'only allow connections through VPN'. Verify the title is now the one referred to in the commit message.
Fix: 34491069
Change-Id: Ic74a8b91eb8ae64fbe15723c173281f4ede52b06
- Add a method in VisibilityLoggerMixin to log visible event using
LogMaker, which allows logging additional FIELD_CONTEXT field.
- In Utils.startFragment, add current page's metricsCategory as an extra
to next page.
- In next page's onResume(), extract the previous page's metricsCategory
and send it to VisibilityLoggerMixin.visible()
- Update all caller with additional paramters
Change-Id: I8e1f2597fa465b7d3aa16fa1d21c052a3219694a
Fix: 35359289
Test: RunSettingsRoboTests
1. There is no way to disconnect VPN after 'Clear credentials'
without removing whole Internet connection because VPN profile to
disconnect is removed when Clear credentials.
2. This commit checks whether VPN is being established or not when
Clear credentials and disconnect VPN if VPN is being established.
Lastly, this shows a toast message to inform VPN disconnected.
Test: manual - took a photo
Signed-off-by : Sungmin Lee <insight.lee@lge.com>
Bug: 29093779
Change-Id: Id5ea01c8731b3b0fca2a31d9d84e8c103952b377
This CL allows the user to see on the Enterprise Privacy Settings
page whether the admin set a global HTTP proxy.
Test: make RunSettingsRoboTests
Bug: 32692748
Change-Id: I3c7c46f806f39c90425fd8e098a749f3cc1e9278
This CL adds information about always-on VPNs to the Enterprise
Privacy Settings page.
Test: make RunSettingsRoboTests
Bug: 32692748
Change-Id: I2b59e2ec4c55308b323aaa478cd9c847fe0b4b55
1. When Settings > More and change disallow configuring VPN policy
and resume Settings, update VPN preference state.
2. When Settings > More > VPN and change disallow configuring VPN policy
and resume VPN Settings, update its state.
Test: manual
Signed-off-by : Sungmin Lee <insight.lee@lge.com>
Change-Id: I4f3c85733ca6ba05cba46e2f4854f54a42b10c21
Allows Settings to control whether always-on VPN is required for the
connection to complete, or if it is offered on a best-efforts basis.
Change-Id: I5eb273a99e7559adc66b05e647c9130a819f99d4
Test: runtest -x tests/app/src/com/android/settings/vpn2/VpnTests.java
Fix: 32420810
For validating that when VPNs are added / removed, the right set of
changes are made to the PreferenceGroup in which they are supposed to
be shown.
Bug: 30998549
Bug: 29093779
Test: runtest -x packages/apps/Settings/tests/unit/src/com/android/settings/vpn2/PreferenceListTest.java
Change-Id: I9394db0e78cc984ab62e3670aa0a7942ae767a66
So there's a way to disconnect from it, if someone deletes all the
keystore entries and the VPN doesn't actually exist any more (but
is still sitting around in memory somewhere keeping the connection
alive).
Bug: 29093779
Fix: 32880676
Test: runtest -x tests/app/src/com/android/settings/vpn2/VpnTests.java
Change-Id: I97671a74af746e5baaa5be0b5cff24e2b1766f53
Lockdown is now the default option, not best-effort mode. It's easier
to shoot oneself in the foot now so we'll show a warning to explain that
before switching it on.
Bug: 29052115
Bug: 29076208
Test: com.android.settings.vpn2.AppSettingsTest
Change-Id: Ia6845e6a7d57baa5476b8a021fb1255fd74aabea
Bug: 30681771
Test: SettingsUnitTests
Refactor visibility logging from InstrumentedFragment into a mixin. And
apply mixin in remaining fragments.
Change-Id: Ibbb59904336254a3e4bb9e8c7d0b36e5a6bc2622
Failing to disconnect but deleting the keystore entry anyway makes
it difficult to do anything about a still-running connection.
Also switching over from prepareVpn(x,x) to prepareVpn(null,x) which
helps avoid race conditions where in between the getLegacyVpnInfo and
prepareVpn calls a 3rd-party app started a connection, which would break
the disconnect but still register as success.
Bug: 23529835
Bug: 29032008
Change-Id: Iedce784cb0eafbf75fe015dd2b3d355fcd887abf
Support for this kind has been taken out so it shouldn't be an option
when connecting (it's already not an option when editing).
Bug: 28807474
Change-Id: Id3e7be390c6813d091e7f897ac82aaf29042beb8
(cherry picked from commit ca75deb7af)
Otherwise it's pretty easy to circumvent any future restrictions by
keeping VPN settings for a particular app open and continuing to use
it even after DISALLOW_CONFIG_VPN is applied.
Two checks:
1) in onResume (catches almost every case)
2) in setAlwaysOn (catches every remaining case)
Bug: 28733079
Change-Id: I1c67bb14891ef620df5ed65fbd32678e417b4a65
Allows callers to opt-out of blockading network traffic during boot and
on VPN app failure.
Bug: 26694104
Change-Id: Ic2c25b79d8a17917025eb37be7de929fe156e2a3
It's pointless, verging on antipattern, to pop up a notification that
points to the screen we're already on, especially when that notification
is telling us something really high-priority ("your connection failed").
Change-Id: Idf0c219adcefd64b235960f3239a70b059213f7d
Fix: 27374485
As any change to the preference title will cause it to lose focus,
best not to do this too often.
Change-Id: Ibac27ee1de42fd7ca05f3e3685b84f37dac39517
Fix: 28191965
Having multiple methods means inevitably when new features are added to
the preferences, the right calls aren't made so information on the
screen lags between updates.
Bug: 28257641
Change-Id: I336aeefd5941ccf808dc9070427209a7d2530032
(cherry picked from commit 903843e6f9)
A little more consistent with the new app VPNs' dialogs. To make this
work it was also necessary to restart the lockdown VPN every time it is
edited, which makes sense because the expected action after editing a
VPN is that it reconnects with the new settings.
Bug: 28072644
Change-Id: I4b6a6f0a6ed96d2ec6f62889fdae4abb60d0646c
- Notification icon is Settings icon
- VpnName is obtained as the same way as AppPreference
- Post notification as the current user with PendingIntent to VpnSettings to parent user
- Auto-cancel when user taps on the notification
- This implementation posts notification only when the failure happens sychronously
(Assume ConnectivityService only unset always-on package immediately after calling setAlwaysOnVpnPackageForUser)
Bug:27374485
Change-Id: I0aee38498c8cc300dd8eb9687adcae5f9dc4f8af
- Move always-on option for legacy vpn into the legacy vpn config page
- This implementation doesn't show dialogue when replacing existing always-on vpn
- Continue to disable lockdown option for legacy vpn when "persist.radio.imsregrequired" is true.
Not applying to vpn app
- Force to save account info when legacy vpn is always-on
- When legacy vpn is always-on, don't try to connect. (Otherwise, an exception is thrown)
TODO: Remove EXTRA_PICK_LOCKDOWN in LockdownVpnTracker in framework
Bug: 26950700
Change-Id: Ia80669359c0b7cdb955c84937156c020ac6e9af5
- Show admin support details when user taps on a cell and user restriction is on
- Show always-on-vpn active status in preference summary
- User can still open non-configurable per-VPN info page even when user restriction is applied
- Rename ConfigPreference to LegacyVpnPreference
- Move summary String handling into ManageablePreference
- ManageablePreference inherits GearPreference to reuse the code
- Don't show disconnect dialog when always-on is enabled
BUG=26950700
Change-Id: I37b087879cf3b674df528e7787d7bb1eead3310f
This CL adds a setting for each VPN
- When no_config_vpn user restriction is applied, user can't change anything in the page
- Launch the subsetting activity in the corresponding user to unlock keystore and force work challenge
- Show dialog when user replace always-on-VPN package
- When forget VPN, unset always-on-vpn
TODO: show per-VPN status in VPN list
Change-Id: Ica360ea44117db6a4ecfaed1eec6c188189c246c
As VPN settings listens to network events it may get woken up again
while it's in the background.
Bug: 23596799
Change-Id: If6e07493da447d7ded324ff86b6e7d57c5c615e3
Removed the left-alignment on restricted empty views which was
inherited from Bluetooth settings but inconsistent with normal
settings fragments.
Bug: 22685111
Change-Id: I3a36c47d523392b8925031d4cac2ab3ef681e360
This does not include certificates, private keys etc. which are still
saved in the KeyStore with the encryption the user requested for them.
Makes connecting to lockdown vpn before user unlock possible.
Bug: 26108660
Change-Id: I56c1672c7a41e761c2791584b99900aff51b59e4
The old way was garbage-heavy. To add to that some changes to the way
PreferenceScreens are redrawn was leading to some artifacts with items
fading in/out every tick.
Bug: 25588385
Change-Id: Idabf7546ab519bf196ad3b8582caa2ec6bf9e084