• Home
  • History
  • Annotate
  • only in /frameworks/base/packages/CaptivePortalLogin/src/com/android/captiveportallogin/
History log of /frameworks/base/packages/CaptivePortalLogin/src/com/android/captiveportallogin/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
9c5c3681158d9f9247f3876b7e7c5204871ff89b 22-May-2018 Remi NGUYEN VAN <reminv@google.com> Use CaptivePortalProbeSpec method in portal app

This only changes behavior if the EXTRA_CAPTIVE_PORTAL_PROBE_SPEC extra
is passed, which only happens if extra probe specs have been defined in
settings.

Bug: b/79499239
Test: manual: on 2 different portals, works w/ and w/o the setting
Change-Id: I70acfd9213bf620cbb79ad999b8ad03472e8d43f
aptivePortalLoginActivity.java
d324dceceff5fc85682212092b8321414bda3ad6 25-Apr-2018 Erik Kline <ek@google.com> Fix CaptivePortalLoginActivity probes to bypass Private DNS

Test: as follows
- built
- flashed
- booted
- runtest frameworks-net passes
- manual testing on captive portal networks
Bug: 64133961
Bug: 77140445
Bug: 78548486

Merged-In: I749e8b5dba3b4af9ecb82bfb558c6f0e664531a4
Merged-In: Ic76d55861f385d1aecd360adda7f10142d083a47
Change-Id: Idbc4d90eeec257b36c5f374d61dea4600a0f8ebb
(cherry picked from commit 848d842a3ad94720e1d70db3337048e9568bb9d6)
aptivePortalLoginActivity.java
2dcccbcc0b7a2d0057902959b0ac9beb0eb2cf32 12-Apr-2018 Chalard Jean <jchalard@google.com> Notif manager and captive portal app to read SSID again

Bug: 77114259
Test: frameworks-net pass
manual test shows the SSID is now displayed again

Change-Id: I5cb2b4777ad78d972031e8f2ff22e2155f4ab894
aptivePortalLoginActivity.java
c43d2f5b1f12dadd8c87c069cd4a13cfbc481699 21-Mar-2018 Erik Kline <ek@google.com> Support bypassing TLS in the framework

This change comprises the following parts:

[1] android.net.dns.ResolvUtil, containing methods that encapsulate the
use of the high bit in netids used in DNS resolution contexts.

[2] Updates to captive portal apps to call the ResolvUtil method that
enables DNS-over-TLS bypass for the captive portal app process.

Test: as follows
- builds
- flashes
- boots
- runtest frameworks-net passes
Bug: 64133961
Bug: 72345192

Merged-In: I0994b53d24ed25a2eb9e65429c61cf6fa87c7513
Merged-In: I4c49e23d8caa4d485df1c1d2f135a7282d439c0b
Change-Id: I2072c1f68d6978fa0d7e9d8693135a2c51bb0f87
(cherry picked from commit 2140529d9b8e116d88c2a385a0b3179c2ede5ad7)
aptivePortalLoginActivity.java
c1b4efb4bea2a0364822a8160f74e4557b18e913 27-Mar-2018 Adam Newman <homebrew@google.com> Fix CaptivePortalLoginActivity null String crash

In getHeaderTitle if NetworkInfo.getExtraInfo() returns null the call to
replaceAll will result in an NPE and if the string weren't null an empty
string would set the title to "Sign in to ".

Add a TextUtils.isEmpty check before displaying the formatted title to
temporarily fix the NPE until an alternative method to obtain SSID is
implemented.

Bug: 77114259
Test: Manually launching with a captive portal network.

Change-Id: I3ce9a6dc65cceb9344700803966d4f0aa12d894c
aptivePortalLoginActivity.java
c3c95bab8ec7f3ef4e7649b5d24ea6525a407c44 25-Mar-2018 Lorenzo Colitti <lorenzo@google.com> Allow third party cookies in the captive portal login app.

Bug: 73909651
Test: Captive portal login app still works
Change-Id: I3ffda92e7d764ea9957df1a5408839cf10a26be5
aptivePortalLoginActivity.java
94bc48f7bbff4772de967bcfc3effd4f710503c2 09-Mar-2018 Chalard Jean <jchalard@google.com> Add the ability to refresh to the captive portal app.

Bug: 69840796
Test: manual
created a small app that brings up the captive portal app,
checked that pulling down does show the refresh spinner,
refresh the page, and hide the spinner when refreshed.
Checked that it works multiple times in a row.

Change-Id: Ieefdaffa9325b0c5f1b02ab6052c29a381f3a4d4
aptivePortalLoginActivity.java
a631781c48b0081fa0278335b02ba8e5e91bcf8a 24-Jul-2017 Hugo Benichi <hugobenichi@google.com> Merge "CaptivePortalLoginActivity: improve logging" am: c0a4f5357e am: d5174ac63d am: d394285fdc
am: d1a0599537

Change-Id: I8090a26efa655ac9c753a0826ed2f053a5d7d27e
d1a0599537e85222e7ce103fc04c13b6db60a9af 24-Jul-2017 Hugo Benichi <hugobenichi@google.com> Merge "CaptivePortalLoginActivity: improve logging" am: c0a4f5357e am: d5174ac63d
am: d394285fdc

Change-Id: I68cced9b81569a6338d0e55062691d87288e8aff
d5174ac63d074e4b50a12dd79c5f706904bd3615 24-Jul-2017 Hugo Benichi <hugobenichi@google.com> Merge "CaptivePortalLoginActivity: improve logging"
am: c0a4f5357e

Change-Id: I475b58f1a6146f0faf4ddf90f44e032ee6c3120f
04d78601ab0bbf7deee9ef97526fd9d45587aec1 19-Jul-2017 Hugo Benichi <hugobenichi@google.com> CaptivePortalLoginActivity: improve logging

- fix a type in onPageStarted
- map ssl error codes to names in onReceivedSslError

Bug: 62332137
Test: build
Change-Id: Ic789f54e06f539e47b60a67225b04b30cacded55
aptivePortalLoginActivity.java
bc67fd74c0b0231975935ba6b8fbb49f3b47c125 14-Jul-2017 Hugo Benichi <hugobenichi@google.com> Merge "CaptivePortalLogin ignores some ssl errors." into oc-dr1-dev-plus-aosp
am: 44d0cda8ef

Change-Id: I5bf2282984b9ed40d838cb6ae30c4ab694a8e160
12df465997c1be51c6802acad2dcf20f010c3576 17-Jun-2017 Hugo Benichi <hugobenichi@google.com> CaptivePortalLogin ignores some ssl errors.

This patch changes the ssl error handler of the captive portal login
activity to ignore errors for resources coming from a different hostname
that the top-level page currently loading.

This allows logging into misconfigured portals that incorrectly bans ssl
to some hostnames necessary for loading their portal login pages.

Bug: 62332137
Test: manually tested with captive portal entwork.

(cherry pick from commit 22542ed48090e2e6e9474b658fdd368041a4060b which
was skipped from merging into oc-dr1-dev-plus-aosp because of previous
cherry picks and incorrect Merged-In annotations)

Change-Id: Idb6ffac2d97b15cfdbe524b91c84dd29ae0be00b
aptivePortalLoginActivity.java
68092b7ade5b5c76b56d3761ea5ac57635c5be1c 17-Jun-2017 Hugo Benichi <hugobenichi@google.com> CaptivePortalLogin ignores some ssl errors.

This patch changes the ssl error handler of the captive portal login
activity to ignore errors for resources coming from a different hostname
that the top-level page currently loading.

This allows logging into misconfigured portals that incorrectly bans ssl
to some hostnames necessary for loading their portal login pages.

Bug: 62332137
Test: manually tested with captive portal entwork.

(cherry pick from commit 22542ed48090e2e6e9474b658fdd368041a4060b which
was skipped from merging into stage-aosp-master)

Change-Id: Iff025d68b824eac2c30b9656fd2494338eb07eb3
aptivePortalLoginActivity.java
8fd2c7d74526709ddabb5415a402cf44be9994d9 05-Jun-2017 Hugo Benichi <hugobenichi@google.com> Instrument captive portal login activity

Also add CAPTIVE_PORTAL_LOGIN_ACTIVITY_SSL_ERROR constants to
metrics_constants.proto for counting ssl error pages shown by the
captive portal login activity.

Bug: 36203355
Bug: 34901696
Bug: 36532213
Test: manually tested with captive portal testing setup while watching
event logs: adb logcat -b events | grep captiveportallogin
06-08 16:25:20.279 21558 21558 I sysui_action: [1004,com.android.captiveportallogin]
06-08 17:01:04.052 21558 21558 I sysui_action: [1007,com.android.captiveportallogin]

Change-Id: I38b8e4dd3d62ad1261695780aeb2377f26a25997
Merged-In: Ia05853506d424ad4cb2c11770ae7718fbef3f01c
Merged-In: I9184f6263a003c2be28f41a550c6164c8d6ee907

(cherry picked from commit c61dc92fc0619d101c4b789f6305012701cc47a0)
aptivePortalLoginActivity.java
2708da7bf6c955e880f8b7952f53e5917cdfb31e 11-Jul-2017 Hugo Benichi <hugobenichi@google.com> Merge "Fix for the missing focus in WebView form fields."
7f1396d3f838786f0e49854d284a95c49ac35161 23-Jun-2017 susnata <susnata@google.com> Fix for the missing focus in WebView form fields.

This looks like a regression for WebView (58.0.3029.125) in android
'O'. But this seems to have been fixed in early version of 60 (webview).
This workaround gets us past the problem, until we get the newer version
of WebView.

Bug: 62449959
Test: Manual
Change-Id: Iab22f8f0db0ab58cb0a184c3f88e6b3770a35fb0
Merged-In: I29883bf7d1567c1ce7be90b4efde4b3da93b99a2

(cherry pick from commit 97640400c4aa6bf05d5606ea749b54ad63de97cd)
aptivePortalLoginActivity.java
a173a63a6cf9c94c511d14d75648f55525ce7006 16-Jun-2017 Hugo Benichi <hugobenichi@google.com> CaptivePortalLogin correctly unregisters callbacks

The NetworkCallback registered by the CaptivePortalLogin activity in
onCreate was unregistered in both onDestroy() and done(). In addition
done() can be called concurrently from different places (from the
webview, from the captive portal test probe, from the activity menu),
resulting in incorrectly unregistering the callback more than once.

This patch fixes the lifecycle management of the NetworkCallback
registered by the CaptivePortalLogin activity so that it is unregistered
once only in onDestroy.

In addition the done() method is made robust against multiple calls and
becomes a no-op after the first call. This avoids multiple calls
to CaptivePortal for the same captive portal.

Bug: 62497809
Test: tested manually with captive portal setup in the office
Change-Id: Ib5da2bd9276d4bd202f1045315b3849f67a15078

(cherry pick from commit 605b295011be74c786a2eef586d31ccb07160422)
aptivePortalLoginActivity.java
22542ed48090e2e6e9474b658fdd368041a4060b 17-Jun-2017 Hugo Benichi <hugobenichi@google.com> CaptivePortalLogin ignores some ssl errors.

This patch changes the ssl error handler of the captive portal login
activity to ignore errors for resources coming from a different hostname
that the top-level page currently loading.

This allows logging into misconfigured portals that incorrectly bans ssl
to some hostnames necessary for loading their portal login pages.

Bug: 62332137
Test: manually tested with captive portal entwork.
Change-Id: I05378ed74e678829e46fbeee18df916ec6ec2856
aptivePortalLoginActivity.java
e277157b12528dddc67d9beae464df2529052279 24-Jun-2017 susnata <susnata@google.com> Merge "Fix for the missing focus in WebView form fields." into oc-dev am: c34dec82a9
am: ab40d62d2c

Change-Id: I14d5910c5009a17f507b701aa461f862c4075152
ab40d62d2c8e5a7f9a9d30c08f8f39d1bbe47ed4 24-Jun-2017 susnata <susnata@google.com> Merge "Fix for the missing focus in WebView form fields." into oc-dev
am: c34dec82a9

Change-Id: Iec9bf203d787d5dcf585b8091bb32b20f1e09f37
97640400c4aa6bf05d5606ea749b54ad63de97cd 23-Jun-2017 susnata <susnata@google.com> Fix for the missing focus in WebView form fields.

This looks like a regression for WebView (58.0.3029.125) in android
'O'. But this seems to have been fixed in early version of 60 (webview).
This workaround gets us past the problem, until we get the newer version
of WebView.

Bug: 62449959
Test: Manual
Change-Id: I29883bf7d1567c1ce7be90b4efde4b3da93b99a2
aptivePortalLoginActivity.java
a111068342a5552537c788ccc76b7d8fab3aa4ac 20-Jun-2017 Hugo Benichi <hugobenichi@google.com> resolve merge conflicts of 48bc4c1f420d to stage-aosp-master
am: ca0c91b9f1

Change-Id: I941327a914d4a44e63a5f57fc0aa98d778fef949
ca0c91b9f1434e9d265b138e45e7655c5cb23b53 20-Jun-2017 Hugo Benichi <hugobenichi@google.com> resolve merge conflicts of 48bc4c1f420d to stage-aosp-master

Change-Id: I41889b0497463e8a63cf2d1e983e7e54298c5c2e
605b295011be74c786a2eef586d31ccb07160422 16-Jun-2017 Hugo Benichi <hugobenichi@google.com> CaptivePortalLogin correctly unregisters callbacks

The NetworkCallback registered by the CaptivePortalLogin activity in
onCreate was unregistered in both onDestroy() and done(). In addition
done() can be called concurrently from different places (from the
webview, from the captive portal test probe, from the activity menu),
resulting in incorrectly unregistering the callback more than once.

This patch fixes the lifecycle management of the NetworkCallback
registered by the CaptivePortalLogin activity so that it is unregistered
once only in onDestroy.

In addition the done() method is made robust against multiple calls and
becomes a no-op after the first call. This avoids multiple calls
to CaptivePortal for the same captive portal.

Bug: 62497809
Test: tested manually with captive portal setup in the office
Change-Id: I77fbeb55cf91d3b44e91d2fecb800dae40279652
aptivePortalLoginActivity.java
0c913bac46b64bd0ce1a0ee87beaeb4cf40af5c1 05-Jun-2017 Hugo Benichi <hugobenichi@google.com> DO NOT MERGE Instrument captive portal login activity

Also add CAPTIVE_PORTAL_LOGIN_ACTIVITY_SSL_ERROR constants to
metrics_constants.proto for counting ssl error pages shown by the
captive portal login activity.

Bug: 36203355
Bug: 34901696
Bug: 36532213
Test: manually tested with captive portal testing setup while watching
event logs: adb logcat -b events | grep captiveportallogin
06-08 16:25:20.279 21558 21558 I sysui_action: [1004,com.android.captiveportallogin]
06-08 17:01:04.052 21558 21558 I sysui_action: [1007,com.android.captiveportallogin]

Merged-In: Ia05853506d424ad4cb2c11770ae7718fbef3f01c

(cherry picked from commit c61dc92fc0619d101c4b789f6305012701cc47a0)
(cherry picked with DO NOT MERGE because oc-dev-plus-aosp already
contains a version of this commit compatible with proto2).

Change-Id: I55ea3c61842f16bf6a98e812fb6dc940f96f895c
aptivePortalLoginActivity.java
4bf6322bcccceb5eda08e2bba05919bb02522cb6 10-Jun-2017 Hugo Benichi <hugobenichi@google.com> Merge "Instrument captive portal login activity" into oc-dr1-dev
am: 169f7bebce

Change-Id: I25f8400556ed82e32bbb7abd6e3fccd3df83cd5f
56057f2b55cbc36cdd90b537d18fd1e4782fc42d 09-Jun-2017 Hugo Benichi <hugobenichi@google.com> Merge "Revert "Instrument captive portal login activity"" am: 2921320517
am: bbddbfc451

Change-Id: I0271fa4138ac9c4f1ddfea648c003a79909214df
29213205173a632c65b77525da00419f47462509 09-Jun-2017 Hugo Benichi <hugobenichi@google.com> Merge "Revert "Instrument captive portal login activity""
828512f14c9e10e6614fde512d5a44cb0fddfda4 09-Jun-2017 Hugo Benichi <hugobenichi@google.com> Revert "Instrument captive portal login activity"

This reverts commit f867da14eaa194cb53b0726b50e570268e70f1d7.

Change-Id: Ic900c91ed87c2d65c151f8386954bd7b74128348
aptivePortalLoginActivity.java
d614cd35099ad886e2812b6de13b45989030e048 09-Jun-2017 Hugo Benichi <hugobenichi@google.com> Merge "Instrument captive portal login activity" am: b213053def
am: 30b7dfb526

Change-Id: Iec106e30ce9dbb38189fe3888f6111be92816891
b213053deff46a3c481a9c544550537f693edf4b 09-Jun-2017 Hugo Benichi <hugobenichi@google.com> Merge "Instrument captive portal login activity"
f867da14eaa194cb53b0726b50e570268e70f1d7 05-Jun-2017 Hugo Benichi <hugobenichi@google.com> Instrument captive portal login activity

Also add CAPTIVE_PORTAL_LOGIN_ACTIVITY_SSL_ERROR constants to
metrics_constants.proto for counting ssl error pages shown by the
captive portal login activity.

Bug: 36203355
Bug: 34901696
Bug: 36532213
Test: manually tested with captive portal testing setup while watching
event logs: adb logcat -b events | grep captiveportallogin
06-08 16:25:20.279 21558 21558 I sysui_action: [1004,com.android.captiveportallogin]
06-08 17:01:04.052 21558 21558 I sysui_action: [1007,com.android.captiveportallogin]

Merged-In: Ia05853506d424ad4cb2c11770ae7718fbef3f01c

(cherry picked from commit c61dc92fc0619d101c4b789f6305012701cc47a0)

Change-Id: I9184f6263a003c2be28f41a550c6164c8d6ee907
aptivePortalLoginActivity.java
9e8ab43ab22555acff9fefca2ed433425c92fb87 05-Jun-2017 Hugo Benichi <hugobenichi@google.com> Instrument captive portal login activity

Also add CAPTIVE_PORTAL_LOGIN_ACTIVITY_SSL_ERROR constants to
metrics_constants.proto for counting ssl error pages shown by the
captive portal login activity.

Bug: 36203355
Bug: 34901696
Bug: 36532213
Test: manually tested with captive portal testing setup while watching
event logs: adb logcat -b events | grep captiveportallogin
06-08 16:25:20.279 21558 21558 I sysui_action: [1004,com.android.captiveportallogin]
06-08 17:01:04.052 21558 21558 I sysui_action: [1007,com.android.captiveportallogin]

Change-Id: Ia05853506d424ad4cb2c11770ae7718fbef3f01c
(cherry picked from commit c61dc92fc0619d101c4b789f6305012701cc47a0)
aptivePortalLoginActivity.java
f5b8d18798099c5fdd87f8c40aa7107a1644dbb6 07-Jun-2017 Hugo Benichi <hugobenichi@google.com> Merge "Captive portal login shows specific network name" am: 01fb05cf62 am: 93fe99aca4
am: 75faf02f04

Change-Id: I1561ccd2676315f3110f20fcbfbd55453f92cbed
335a1d36eab391e750b210ec1f00f1da014271f5 07-Jun-2017 Hugo Benichi <hugobenichi@google.com> Merge "Revert "Captive portal login shows specific network name"" am: 7f423d00dd am: 24912bb93d
am: 41415facc8

Change-Id: Ic93c6170813b8c43176d57b534e405500c4639c1
3a222974e9cdbb120d22c439580401a5d63b51b2 31-May-2017 Hugo Benichi <hugobenichi@google.com> Captive portal login shows specific network name

Bug: 62274222
Bug: 38197949
Bug: 36532213
Test: manually tested by triggering the captive portal login activity
Change-Id: I31439b13a87a78982560828f9ea8a3a57591471b
aptivePortalLoginActivity.java
ef0884f2e528aff83c3beddd759246bf635763d1 07-Jun-2017 Hugo Benichi <hugobenichi@google.com> Revert "Captive portal login shows specific network name"

This reverts commit 8032ff32ff9c2b6684bd365059f88a858272b633.

Several branches are broken because of this.

Change-Id: I2d9f8b1cc8f93ed8de7d1e01d49c7cd29417820d
aptivePortalLoginActivity.java
8d60db52413a30a429a9e3d5bcfcd05c6a83c250 07-Jun-2017 Hugo Benichi <hugobenichi@google.com> Merge "Captive portal login shows specific network name" am: ea7322d17e am: d4cb33b83f
am: 6f2d79464d

Change-Id: I88dc4240bc4a8eb84bc3edd7a9f5a873296075fd
8032ff32ff9c2b6684bd365059f88a858272b633 31-May-2017 Hugo Benichi <hugobenichi@google.com> Captive portal login shows specific network name

Bug: 62274222
Bug: 38197949
Bug: 36532213
Test: manually tested by triggering the captive portal login activity
Change-Id: If10448dce5db0fc3c46cedba58abda26e30e2507
aptivePortalLoginActivity.java
7412716459438c9938b08dbb8bae026afe85a363 05-Jun-2017 Hugo Benichi <hugobenichi@google.com> Merge "Fix captive portal login ssl error overflow" am: 42409f9776 am: a89aad8408
am: f3f7cd007a

Change-Id: I1f162b171d750fed8f17ff96c6e684efa8f3cd3f
c991275325bfcae7237d1dcecd60530acddca114 02-Jun-2017 Hugo Benichi <hugobenichi@google.com> Fix captive portal login ssl error overflow

This patch fixes the built-in html page shown in the captive portal
login activity when there is an ssl error. The page is now scaled
correctly with respect to the device screen, and text wraps as
expected.

This patch also cleanups the hardcoded page by:
- formatting it for better reading,
- inlining the "px" css rules,
- using string concatenation instead of format for including the
localized text.

Bug: 62269512
Bug: 36532213
Test: manually triggered the activity to load the error page
Merged-In: I9d037222798bd9d4c1736923afb71e3e14c68bcc

(cherry pick from commit 60d5f46d89038a6a46c38ac0e57d0762a67732cb)

Change-Id: I5cb6e53f5af9dc4b93be8da1d9b6e0e8958e561f
aptivePortalLoginActivity.java
60d5f46d89038a6a46c38ac0e57d0762a67732cb 02-Jun-2017 Hugo Benichi <hugobenichi@google.com> Fix captive portal login ssl error overflow

This patch fixes the built-in html page shown in the captive portal
login activity when there is an ssl error. The page is now scaled
correctly with respect to the device screen, and text wraps as
expected.

This patch also cleanups the hardcoded page by:
- formatting it for better reading,
- inlining the "px" css rules,
- using string concatenation instead of format for including the
localized text.

Bug: 62269512
Bug: 36532213
Test: manually triggered the activity to load the error page
Change-Id: I9d037222798bd9d4c1736923afb71e3e14c68bcc
aptivePortalLoginActivity.java
847737f09059bcdbba9d9a249c5e68053bac7eaf 17-May-2017 Hugo Benichi <hugobenichi@google.com> Prettify the captive portal sign-in activity

- fuses url bar with activity header: url is now the subtitle
- url appears as text and not as editable content
- url only shows host name
- header style is the device default for Settings
- Material progress bar
- progress bar disappears at page load finished
- webview does not jump at page load finished

Bug: 62107381
Bug: 38197949
Test: tested by manually triggering the sign-in activity
Merged-In: Id75023acad04f444dbfc41de56814a09e70cc6f9

(cherry pick from commit a206649a6f66f16cc56db2f4e32b846d9b03501c)

Change-Id: I5c3e5ebac18fef6611c215d04d88ffef67b2b640
aptivePortalLoginActivity.java
a206649a6f66f16cc56db2f4e32b846d9b03501c 17-May-2017 Hugo Benichi <hugobenichi@google.com> Prettify the captive portal sign-in activity

- fuses url bar with activity header: url is now the subtitle
- url appears as text and not as editable content
- url only shows host name
- header style is the device default for Settings
- Material progress bar
- progress bar disappears at page load finished
- webview does not jump at page load finished

Bug: 62107381
Bug: 38197949
Test: tested by manually triggering the sign-in activity
Change-Id: Id75023acad04f444dbfc41de56814a09e70cc6f9
aptivePortalLoginActivity.java
94c5fb342bbb04bcf099807752243c84b26b9a9b 11-May-2017 Hugo Benichi <hugobenichi@google.com> CaptivePortal: login activity UI improvements

Similarly to commit 2e0915f14384901f25a41d698b39ef0add201550 for the
carrier portal login, this patch changes the default settings of the
webview used for the system captive portal login activity to allow
better user experience on "wide" login pages designed for desktop.

Test: manually tested with captive portals.
Bug: 31813936, 19228946, 36532213
Change-Id: Ib84fd351e47e951d24f297bc7de1b035b51cf24f
Merged-In: I2579994da37f3b0f4c08e24e59c81f31835ab832

(cherry picked from commit f7eea406c950e447608c6f62de05158334682365)
aptivePortalLoginActivity.java
f7eea406c950e447608c6f62de05158334682365 11-May-2017 Hugo Benichi <hugobenichi@google.com> CaptivePortal: login activity UI improvements

Similarly to commit 2e0915f14384901f25a41d698b39ef0add201550 for the
carrier portal login, this patch changes the default settings of the
webview used for the system captive portal login activity to allow
better user experience on "wide" login pages designed for desktop.

Differently from commit 2e0915f14384901f25a41d698b39ef0add201550, the
zooming buttons are not displayed (i.e zooming is possible only with
gesture).

Test: manually tested with captive portals.
Bug: 31813936, 19228946, 36532213
Change-Id: I2579994da37f3b0f4c08e24e59c81f31835ab832
aptivePortalLoginActivity.java
51efddbd3bb304de2dd47fa8cd1114ac555958bb 05-Apr-2017 Alan Viverette <alanv@google.com> Remove unnecessary casts on calls to findViewById

Just frameworks/ this time. More paths to come.

Bug: 24137209
Test: make -j32
Change-Id: Iff27abd26fa43296ac2fff8f534fc6742d2ae80c
aptivePortalLoginActivity.java
ec88fd6708c14515f75d0f9de24e505e62fc3550 07-Mar-2017 Hugo Benichi <hugobenichi@google.com> CaptivePortalLoginActivity correctly gets UserAgent

Change I33cbcdab9809c712d998da6d925bdd4e3093f8ff added to the intent
passed from NetworkMonitor to the CaptivePortalLoginActivity an extra
argument to set the UserAgent header of probes done by the
CaptivePortalLoginActivity.

However that extra String argument is not correctly retrieved from the
Intent and instead a null pointer is returned by getParcelableExtra().
Consequently the UserAgent header field is never set.

This patch fixes this bug and replace getParcelableExtra() with
getStringExtra().

It also adds logging of the request header and response header for every
network probes sent by CaptivePortalLoginActivity.

Bug: 35937367, 32369183
Test: manually tested
Change-Id: If5c463023474ffb0401f3cda5875ccd9fc6f79f9
aptivePortalLoginActivity.java
2c02197bdd12378c7b2f8ee4bcaa625b2c564ede 14-Dec-2016 Hugo Benichi <hugobenichi@google.com> DO NOT MERGE Captive portals: login activity probes like NetworkMonitor

This patch changes CaptivePortalLoginActivity captive portal test to be
consistent with NetworkMonitor by:
- using Network.java to open the http connection.
- adding a UserAgent property to the request header.

Test: manually tested.
Bug: 32369183

(cherry picked from commit cdf3ba48ccef0f9c6ca8724c1c106df0dd725ad0)

Change-Id: I559eb0497475daad758ba3b3395225dcd0a27a57
aptivePortalLoginActivity.java
7f086e162b9000fd471f3450ae53fe1261f58993 06-Dec-2016 Hugo Benichi <hugobenichi@google.com> DO NOT MERGE Logging improvements in CaptivePortalLoginActivity

Logging improvements to help debugging captive portal issues.

Test: manually tested
Bug: 33126342

(cherry picked from commit 87de0c206709d3a170649b535a973de8f9c0fb0c)

Change-Id: I52425b849412f6bd5c5ca1f0be7a49cc772497eb
aptivePortalLoginActivity.java
b55bf38351fc06d267735e8e377d4049c2a7b5d3 21-Oct-2016 Lorenzo Colitti <lorenzo@google.com> DO NOT MERGE: CaptivePortalLogin: set mixed content policy to compatibility.

This makes the policy for mixed HTTP/HTTPS content match Chrome.
This allows us to display login pages where unimportant
subresources are HTTP.

Bug: 32171569

(cherry picked from commit 625166377b2d7c5f09d1e7617b3eac3a464fba53)

Change-Id: Ia82958192d978280715442e182c34f9da5c88c66
aptivePortalLoginActivity.java
6a776c8317138cf4a3013addc1bd1a462f6dc1eb 19-Jul-2016 Paul Jensen <pauljensen@google.com> Don't let sign-in to network app appear in recents when it finishes

When the app exits there is no more work that can be accomplished
with it so don't let it be reactivated from the recents list.

Change-Id: I3dd67e033c5e68dac31e7a8c367eb81bd862dc21
Fixes: 29925057
aptivePortalLoginActivity.java
b7c2487c8b5fbd154643b8ddade8d88507cae137 04-Jan-2016 Udam Saini <udam@google.com> Makes captive portal server calculation in one place.

This also creates a hidden api for the captive portal server calculation
so that the Setup Wizard can use this as well.

bug:13246857
Change-Id: I4dfd0916df97cfce13252c7cc15f7bd05ed95f77
aptivePortalLoginActivity.java
52eb29f0822f129f2b14bacec23dd492f2260ac0 23-Sep-2015 Jan Nordqvist <jannq@google.com> Hotspot 2.0 relase 2 first cut.

CP mods to take a URL as a parameter, and new ScanInfo object.

Change-Id: Idbb2d4751c575ba07a56942771e2b2955b624635
aptivePortalLoginActivity.java
e7d0179df53326a24c5b23812ea5d90a26c2d0a1 20-Jul-2015 Erik Kline <ek@google.com> Change to connectivitycheck.gstatic.com

Bug: 18869302
Bug: 22368233
Change-Id: Iaecb59e4ef13a0fa82a0a4a920689804d24044c8
aptivePortalLoginActivity.java
49e3edff5156f471819e4ea2a88994bca70bd870 22-May-2015 Paul Jensen <pauljensen@google.com> Add android.net.CaptivePortal class for captive-portal-handling-app callbacks

This new class replaces the awkward string token and ConnectivityManager APIs
used by apps handling captive portals.

Bug:21343774
Change-Id: I1a2c69edb17322715bf8422bb4216b0ea60bfd59
aptivePortalLoginActivity.java
41ff524a6325feb8dc9d3d64545c5f2aeb964f34 09-Jun-2015 Paul Jensen <pauljensen@google.com> Log SslErrors from captive portal sign in app.

Bug:21604873
Change-Id: I0361da37039bb4f0f9d2e0dabbae4ab2ddbb05e3
aptivePortalLoginActivity.java
fd54da9b7ccf8218bb99cbbe540fd71ea411508b 09-Jun-2015 Paul Jensen <pauljensen@google.com> Add support for tel: links in captive portal app.

Bug:21447011
Change-Id: I72ec4fd780ddb89cecfa584aa285f3822f326810
aptivePortalLoginActivity.java
e836b6847af968460f36a4e6649b8cb6f6da18db 19-May-2015 Paul Jensen <pauljensen@google.com> Disallow going back to initial empty page in captive portal app

This is a little tricky because WebView history can only be cleared
after the next page load and we don't want to allow hitting back
during the first page load.

Bug:21147832
Change-Id: I639dfd27d4dc3af618282256ca02b9947e64a7b9
aptivePortalLoginActivity.java
65636fb23c86e546dc4ce584481fa58bf72e4945 06-May-2015 Paul Jensen <pauljensen@google.com> Update captive portal sign-in app SSL error page UI.

Add text and update image as per UX team recommendations.
Add "Use as is and open browser" link.

Bug:18791346
Bug:20038019
Bug:20486308
Change-Id: Ibf6d1493f5332e7905154cc7306645ac4c1a6283
aptivePortalLoginActivity.java
868f6243bc6021465938a7b764bef8fd001cb39c 18-May-2015 Paul Jensen <pauljensen@google.com> Don't leak NetworkListens in captive portal app.

Bug:21146632
Change-Id: I934044a2eec89a47185add881a74de5669cd0f89
aptivePortalLoginActivity.java
5344a4abdf239a19485a9c858b6cc3be96002eac 06-May-2015 Paul Jensen <pauljensen@google.com> Add URL bar to captive portal login app.

Keeps the user informed whether site is using SSL and what URL is being
displayed in an attempt to avoid phishing. The progress bar is now
always visible as it provides a border between the URL bar and WebView.

Bug:20322548
Change-Id: I001a4501a02cc79080b0f37f0a304c609bbd7664
aptivePortalLoginActivity.java
a179962b61a9c41e8859ce642471928f1ad33c60 24-Apr-2015 Etan Cohen <etancohen@google.com> Merge commit '25a217c' into merge2

Change-Id: I116a9dbf19e95651a7c50393e4dcd7fb59ca3f3f
25a217c0fbda9bbaf58ec08b91115e99f73b727f 28-Feb-2015 Paul Jensen <pauljensen@google.com> Add captive portal API.

This API allows apps other than the system's CaptivePortalLogin
to handle signing in to captive portals.

bug:19416463
Change-Id: I27fce5856b635233e6ff66396d50ccabedd76cf5
aptivePortalLoginActivity.java
57bf2a8a38e929f00f3323cf97a8ea7a9af900ce 11-Apr-2015 Prerepa Viswanadham <dham@google.com> Merge commit 'e593d0a' into merge_work

Change-Id: I4f8ae40fc446cd9cda4d5c6ec99469a98dda595b
72db88e46fba5f2581eb21c042dc79887cda1c10 10-Mar-2015 Paul Jensen <pauljensen@google.com> Deprecate static ConnectivityManager.get/setProcessDefaultNetwork() functions.

These functions risk hitting an unchecked Exception due to ConnectivityManager
not being instantiated yet. Also, change Network.openConnection() to throw a
checked Exception rather than an unchecked Exception when ConnectivityManager
is not yet instantiated.

bug:19416463
Change-Id: Ie1e2b3238aec0343d267c76b64927073f2f05f85
aptivePortalLoginActivity.java
08c7116ab9cd04ad6dd3c04aa1017237e7f409ac 28-Feb-2015 John Spurlock <jspurlock@google.com> Remove unused imports in frameworks/base.

Change-Id: I031443de83f93eb57a98863001826671b18f3b17
aptivePortalLoginActivity.java
cd29cb66f92b008e8547f70b30223ce8dbc1fb86 13-Jan-2015 Lorenzo Colitti <lorenzo@google.com> Switch the connectivity check to its own hostname.

Bug: 18467482
Bug: 18869302
Bug: 18924197
Change-Id: I1de478e9c8a165faf6f1bf81e042d1de9e03c3d5
aptivePortalLoginActivity.java
ee8feae5d4624e6759e264cc80eac28b0d0af20f 17-Dec-2014 Paul Jensen <pauljensen@google.com> Merge "Show broken lock image when SSL errors are encountered in CaptivePortalLogin." into lmp-mr1-dev
e0bef71662d81caaaa0d7214fb0bef5d39996a69 10-Dec-2014 Paul Jensen <pauljensen@google.com> Fix several HTTP proxy issues with multinetworking.

1. Send PROXY_CHANGE_ACTION broadcast when any network's proxy changes,
not just the default network.
2. When a process is bound to a particular Network, update the proxy
system properties to those for the bound Network, and keep them
updated when PROXY_CHANGE_ACTION broadcasts are received.
3. Make Network.openConnection() use the proxy for the Network.

bug:17905627
bug:17420465
bug:18144582

(cherry-pick of https://android-review.googlesource.com/#/c/115170)

Change-Id: Ia2819985e6108a8c121e74c683a5646becfd0a97
aptivePortalLoginActivity.java
fc8022f8cfffded3d94baef3ba5e5ce936799b06 09-Dec-2014 Paul Jensen <pauljensen@google.com> Show broken lock image when SSL errors are encountered in CaptivePortalLogin.

The WebView cancels the page load by default, so showing an indicative image
at least informs users that there is a security problem.

bug:18505835
bug:18570703
Change-Id: Ie6dd9294eec9ca25d27e95a1cd2c95e3065de469
aptivePortalLoginActivity.java
71b645fe9cb8106dfcbf025a3fd7f58698c051bb 13-Oct-2014 Paul Jensen <pauljensen@google.com> Don't let NetworkMonitor state stop user-initiated transitions.

GCM can call reportInetCondition() at any time which can cause
the NetworkMonitor to transition states to reevaluate at any time.
Previously we were only listening for users clicking the sign-in
notificaiton or completing sign-in when in the appropriate state.
With this change NetworkMonitor's state does not stop us from
listening for the user's actions.

bug:17917929
Change-Id: Ic1da31d90f7090e5fc111874cb7c37d505aaf590
aptivePortalLoginActivity.java
88eb0fa8eec7da1b7a3bd39f9d9844909911bc64 02-Oct-2014 Paul Jensen <pauljensen@google.com> Use network-specific HTTP proxy settings in captive portal login app.

The HTTP proxy system properties are set based on the proxy configured
for the network the captive portal login app is operating on. These
system properties are subsequently read by the WebView used to perform
the sign-in.
This is a short-term fix using reflection. This allows users with
cellular providers that use proxies to sign into WiFi captive portals.
The long-term fix could involve:
1. Sending out a network-specific proxy config changed broadcast, and
2. Modifying the ActivityThread to set proxy system properties for
Networks selected with setProcessDefaultNetwork(), and
3. Modifying WebView to read from the proxy system properties when
PROXY_CHANGE_ACTION broadcasts are received.

bug:17679789
Change-Id: I3ada0470ad085df1a4452b4a655ac35f310d2241
aptivePortalLoginActivity.java
8df099df1516d23c113be3121635dcd34984a4a0 26-Sep-2014 Paul Jensen <pauljensen@google.com> Make CaptivePortalLogin app exit if underlying Network disconnects.

The app is no longer useful if the underlying Network has disconnected
and could get in the way of another signing into another Network.

bug:17672087
Change-Id: I26e820444640975e7fd4dd73244f4d4f4b40cb5e
aptivePortalLoginActivity.java
8f333f19222ac9415152e31f10e0df2b571b0b77 06-Aug-2014 Paul Jensen <pauljensen@google.com> Switch CaptivePortalLogin app to use theme like Settings UI.

The theme is switched to Theme.Material.Settings. The progress bar
window feature is not supported in Material (b/16652978) so I added
a progress bar to the layout. The Theme.Material.Setting's accent
color is set such that ProgressBars are indistinguishable, so accent
color is reset back to the parent's setting.

bug:15409354
Change-Id: Ic2862b8439be8591ec426f3d4dffad72179b2539
aptivePortalLoginActivity.java
b6ea9ee6fe6fc205f4f8be593ca993d594e8d504 18-Jul-2014 Paul Jensen <pauljensen@google.com> Make back button work in CaptivePortalLogin app like a web browser.

Users will be using the app to navigate web pages like they are used to in
web browsers, so the back button should act similarly. There also isn't
an in-app back button so this adds essentially necessary functionality.

bug:16397616
Change-Id: Idd73d4a048d79e56bf981a8f477336f00eaafc3b
aptivePortalLoginActivity.java
869868be653cb8eedd338e8347dfee1520d38cec 15-May-2014 Paul Jensen <pauljensen@google.com> Enable network validations and add app to handle captive portal login.

Network validation prevents networks claiming to provide internet connectivity
from becoming the default network in cases where internet connectivity is not
found to actually exist.
If a captive portal is encountered the appropriate broadcasts and notifications
are surfaced to allow apps to handle signing in. If no app handles signing in,
my system app will handle it.

Bug:15409233
Bug:15409354

Change-Id: Ie240d7eac4bdbab8cc7578782bd72d8b26de7951
aptivePortalLoginActivity.java