Commit graph android_packages_modules_Co.../services/core/java
Message SHA1
Network Switching Notifications: add unit tests am: 550ad8d1d0 am: 56f1281888 am: cf5f5785c9
am: ed9a34a936

Change-Id: Idf4986df6f0f2b232aeaa5e43feb51615089dc71

Hugo Benichi   authored and   android-build-merger   commited 2016-08-31 23:30:34 +00:00
7a34d54ff6
Don't notify on network switch if source network is validated. am: 673e80f021 am: b301283d57 am: a0a41b1e3d
am: 1b5c43a0d3

Change-Id: I150cbafb6ab3fce4800241bfacec4bf4ee73db31

Lorenzo Colitti   authored and   android-build-merger   commited 2016-08-31 22:40:41 +00:00
096bed4a12
Network Switching Notifications: add unit tests am: 550ad8d1d0 am: 56f1281888
am: cf5f5785c9

Change-Id: I978e49ba1302ca3d791c59555b5a143cefb62c06

Hugo Benichi   authored and   android-build-merger   commited 2016-08-30 20:31:34 +00:00
ed9a34a936
Network Switching Notifications: add unit tests
BUG: 31132499
Change-Id: I9c50a59fe48efdcb51d2517f0a756691700c3ebe

Hugo Benichi   commited 2016-08-31 00:35:16 +09:00
550ad8d1d0
Don't notify on network switch if source network is validated. am: 673e80f021 am: b301283d57
am: a0a41b1e3d

Change-Id: I047a0040798223c163d333996e6bc06e206129a0

Lorenzo Colitti   authored and   android-build-merger   commited 2016-08-30 11:02:33 +00:00
1b5c43a0d3
Don't notify on network switch if source network is validated.
Sometimes we switch away from a network to another (e.g., wifi to
cell data) not because the old network is unvalidated, but
because the score is lowered by a low signal strength.

In this case, don't notify the user of a network switch.

Bug: 31132499
Change-Id: I996a6e00096f8cb864fa9b00b36921725a4edb53

Lorenzo Colitti   commited 2016-08-29 16:30:21 +09:00
673e80f021
Support notifying network switches via notifications and toasts. am: b268f9f554 am: 4549d8b4aa am: 10acdf7ad1
am: 9c231f7179

Change-Id: Ic2031d00a24a6fd7ad1969a962360920fac9afd1

Lorenzo Colitti   authored and   android-build-merger   commited 2016-08-26 22:21:10 +00:00
5c458be7f6
Support notifying network switches via notifications and toasts. am: b268f9f554 am: 4549d8b4aa
am: 10acdf7ad1

Change-Id: I0324cfdb7c070464c2caa73fa5fad8d1031c1e76

Lorenzo Colitti   authored and   android-build-merger   commited 2016-08-25 09:36:13 +00:00
9c231f7179
Support notifying network switches via notifications and toasts.
Bug: 31025214
Change-Id: If1578f422f38a1dcfaec529882aed01ae5e8d53c

Lorenzo Colitti   commited 2016-08-25 18:14:18 +09:00
b268f9f554
Refactor NetworkNotificationManager. am: eb166f447b am: a6dcb89e6d am: 4e0916b416
am: 9a0d4e6590

Change-Id: I1249d019ce449f8721541c138f89b98230a67b57

Lorenzo Colitti   authored and   android-build-merger   commited 2016-08-23 18:34:58 +00:00
23d1c6706a
Move notification code out of ConnectivityService. am: 7d31cc0021 am: 622b5fbbf5 am: 28707247f4
am: 2caa412d20

Change-Id: I4263c2051e654588dab98e53e3015e59576fb987

Lorenzo Colitti   authored and   android-build-merger   commited 2016-08-23 18:34:18 +00:00
3b61fef572
Refactor NetworkNotificationManager. am: eb166f447b am: a6dcb89e6d
am: 4e0916b416

Change-Id: I548b311ab8dc1d7e08f17a6b31573262c8a4518e

Lorenzo Colitti   authored and   android-build-merger   commited 2016-08-23 17:21:39 +00:00
9a0d4e6590
Move notification code out of ConnectivityService. am: 7d31cc0021 am: 622b5fbbf5
am: 28707247f4

Change-Id: I6e3290891f322c1caca3ff70a3aa39dd140d6256

Lorenzo Colitti   authored and   android-build-merger   commited 2016-08-23 17:20:59 +00:00
2caa412d20
Refactor NetworkNotificationManager.
1. Move from deprecated network types to transport types.
2. Rename and simplify (by passing in a NetworkAgentInfo object)
   the call signature of the method that displays notifications.
3. Add a method to clear notification, and unindent lots of code.
4. Move the legacy DcTracker-issued notification code to
   NetworkNotificationManager.

Bug: 31025214
Change-Id: Ie49c60126d0ed5bac620bc47e84fe038791b2d6c

Lorenzo Colitti   commited 2016-08-23 17:57:46 +09:00
eb166f447b
Move notification code out of ConnectivityService.
Bug: 31025214
Change-Id: I4190be6b57f92298b79bea8868f1876ecbfd2d75

Lorenzo Colitti   commited 2016-08-23 15:31:59 +09:00
7d31cc0021
Support timeouts for requestNetwork() invocations.
(cherry-pick of 06c3ef1367e850746eef0a5462bdce8674d74c30)

Bug: 21414325
Change-Id: I08118be8e8cf92fc406d431e99a6c9191a863ff3

Erik Kline   authored and   Etan Cohen   commited 2016-08-15 10:19:45 -07:00
66721821df
Defaulting wallpaper offset to edge of the screen. am: 4b4ba90d66 am: 18faeaa5fa
am: 89218fdd83

Change-Id: I86d0616df8f938b1b80651be83802796a24250b9

Winson   authored and   android-build-merger   commited 2016-07-31 02:12:44 +00:00
ebc8e3fc17
IpConnectivityMetrics: no metrics upload in tests am: 638621a1f9
am: ae048d8363

Change-Id: I4171f72e27f39f2c10e4607b84934676337c1b4e

Hugo Benichi   authored and   android-build-merger   commited 2016-07-29 09:34:35 +00:00
89218fdd83
IpConnectivityMetrics: no metrics upload in tests
Similarly to ApfTest, this patch changes ConnectivityServiceTest to use
a mock object instead of IpConnectivityLog so that running
ConnectivityServiceTest does not generate android.net.metrics events.

Bug: 30450301
Change-Id: Ibc0479f381f26e60baefbae15407c62aecbf6666

Hugo Benichi   commited 2016-07-29 16:58:35 +09:00
638621a1f9
resolve merge conflicts of c489935 to nyc-mr1-dev-plus-aosp
am: 8850477c85

Change-Id: Ia0a4544784592ac857e5bd652fee47eec621f3a0

Hugo Benichi   authored and   android-build-merger   commited 2016-07-26 15:18:51 +00:00
61f1063650
resolve merge conflicts of c489935 to nyc-mr1-dev-plus-aosp
Change-Id: Ib1c01241fece36f660d27f3450ba8059b3b2809f

Hugo Benichi   commited 2016-07-26 13:08:14 +09:00
8850477c85
Add CONNECTIVITY_USE_RESTRICTED_NETWORKS permission
This patch creates a new permission used by ConnectivityService to give
access to restricted networks without the NET_CAPABILITY_NOT_RESTRICTED
capability bit on.

Bug: 24497316
Change-Id: I5b6c8a9ef14395b2f1ab26cb17b24d7876ec79f1

Hugo Benichi   commited 2016-07-25 10:24:42 +09:00
c4899354b0
Merge \"Merge \\"Add an isListen method to NetworkRequests.\\" into nyc-mr1-dev am: b5239329b1\" into nyc-mr1-dev-plus-aosp
am: 17450e41b3

Change-Id: Ic71a5722ee877de73e7ffd340a5ffb84a2d4910d

Lorenzo Colitti   authored and   android-build-merger   commited 2016-07-18 15:15:33 +00:00
ce5631a865
Merge \"Add an isListen method to NetworkRequests.\" into nyc-mr1-dev
am: b5239329b1

Change-Id: Ib712c3c7b44d3a623d5f5facf0c7f6844c3ebb82

Lorenzo Colitti   authored and   android-build-merger   commited 2016-07-18 15:08:54 +00:00
56b3b700f2
Add an isListen method to NetworkRequests.
This allows simplification of the ConnectivityService code.

Bug: 23113288
Change-Id: I124544b99c5a920124e9a3d31cda8c6d2abc21fd

Lorenzo Colitti   commited 2016-07-18 18:42:26 +09:00
6737b64741
ConnectivityService dump: add apps blocked logs am: 7b3bf37ac3
am: 6fef6d72f2

Change-Id: If0842e480b448cbbcb9fff3a03e6e9d84a385c89

Hugo Benichi   authored and   android-build-merger   commited 2016-07-12 04:44:21 +00:00
7fe197128e
ConnectivityService dump: add apps blocked logs
am: 7b3bf37ac3

Change-Id: I50c87dc35ef219844a5337768ec2526aeff4f1ca

Hugo Benichi   authored and   android-build-merger   commited 2016-07-12 04:39:05 +00:00
6fef6d72f2
ConnectivityService dump: add apps blocked logs
This patch adds NetworkInfo BLOCKED/UNBLOCKED status of apps to
ConnectivityService's dump logs.

The BLOCKED or UNBLOCKED status of an app is logged with the app uid
when the app calls getActiveNetworkInfo().

Examples:
mNetworkInfoBlockingLogs (most recent first):
  07-11 11:04:43.139 - BLOCKED 10060
  07-11 11:04:39.056 - UNBLOCKED 10061
  07-11 11:04:38.851 - BLOCKED 10061

Bug: 29981766
Change-Id: I6e2fde446702b92b0964ed894409b5d733d8f8a7

Hugo Benichi   commited 2016-07-12 11:39:48 +09:00
7b3bf37ac3
Support requesting async LinkProperties/NetworkCapabilities updates am: aec3f5ef5b
am: 95d433f07a

Change-Id: If177966a19c830a106ce689c7e07a7835bb2c1a1

Erik Kline   authored and   android-build-merger   commited 2016-07-12 01:46:09 +00:00
1933d46565
Support requesting async LinkProperties/NetworkCapabilities updates
am: aec3f5ef5b

Change-Id: Icc048323debbbe641941c5c0d993f4c9782c5d3e

Erik Kline   authored and   android-build-merger   commited 2016-07-11 11:01:42 +00:00
95d433f07a
Support requesting async LinkProperties/NetworkCapabilities updates
Bug: 9580643
Change-Id: I1d7ba7645c20d7d53f6eef777dfce43727940f13

Erik Kline   commited 2016-07-11 19:17:41 +09:00
aec3f5ef5b
Merge \\"Rewrite lingering.\\" into nyc-mr1-dev am: 49b4492b33
am: d1cf630685

Change-Id: Ieff4a63ad1d5959760e69f68e832ca256ec2c2ae

Lorenzo Colitti   authored and   android-build-merger   commited 2016-07-07 11:06:53 +00:00
3f0679a267
Merge \"Rewrite lingering.\" into nyc-mr1-dev
am: 49b4492b33

Change-Id: I62d69f20101318b42d4d333b104dcf4f64dc1725

Lorenzo Colitti   authored and   android-build-merger   commited 2016-07-07 11:01:19 +00:00
d1cf630685
Merge \\"Prepare to delete useless loop in handleReleaseNetworkRequest.\\" into nyc-mr1-dev am: 540ee120e5
am: bebd1cf7fe

Change-Id: I68c75cd5980075bdb2586ba5967fcb6ce20dc158

Lorenzo Colitti   authored and   android-build-merger   commited 2016-07-07 07:49:13 +00:00
bfb539e90a
Merge \"Prepare to delete useless loop in handleReleaseNetworkRequest.\" into nyc-mr1-dev
am: 540ee120e5

Change-Id: I8cd95575e7758ee94417ec15e407f396434f4c04

Lorenzo Colitti   authored and   android-build-merger   commited 2016-07-07 07:40:46 +00:00
bebd1cf7fe
Rewrite lingering.
The two major changes here are:

- Move lingering out of NetworkMonitor. The fact that lingering
  is currently its own state in NetworkMonitor complicates the
  logic there: while a network is lingering it cannot be in any
  other state, we have to take care not to leave LingeringState
  for the wrong reason, etc.
- Instead of keeping a single per-network boolean to indicate
  whether a network is lingered or not, keep a linger timer for
  every request. This allows us to fix various corner-case bugs
  in lingering.

The changes in behaviour compared to the current code can be seen
in the unit test changes. Specifically:

1. Bug fix: when a network is lingered, and a request is added
   and removed to it, the existing code tears the network down
   immediately. The new code just sends another CALLBACK_LOSING
   and resumes lingering with the original timeout.
2. Bug fix: if cell is unvalidated and wifi comes up and
   validates before cell does (as might happen on boot), the
   existing code immediately tears down cell. The new code
   lingers cell, which is correct because unvalidated cell was
   the default network, so an app might have been using it.
3. Correctness improvement: always send CALLBACK_AVAILABLE for
   the new network before sending CALLBACK_LOSING. This was not
   really an issue in practice, because the usual flow is:
    - Network A is the default.
    - Network B connects, CALLBACK_AVAILABLE.
    - Network B validates, CALLBACK_LOSING.

Bug: 23113288
Change-Id: I2f1e779ff6eb869e62921a95aa9d356f380cf30a

Lorenzo Colitti   commited 2016-07-07 16:18:57 +09:00
70c70fa7e2
Prepare to delete useless loop in handleReleaseNetworkRequest.
As explained in the TODO, the loop serves no purpose since only
one network can be satisfying a given request at a time.

Instead of looping, look up the nai in the mNetworkForRequestId
array that exists for this purpose.

Keep the loop around with an Slog.wtf statement on it so we can
see if we ever hit it, and add a TODO to delete it if we don't.

Bug: 23113288
Change-Id: I173de4bd45c5a4169b7a062a981f2ecccaa44143

Lorenzo Colitti   commited 2016-07-07 14:50:12 +09:00
daeb6109e1
Merge \\"Unbreak unregisterNetworkCallback.\\" into nyc-mr1-dev am: 04401f0e0f
am: 3e1d024327

Change-Id: I7861e8ff7b8528d8468f8217e13398f78be50de5

Lorenzo Colitti   authored and   android-build-merger   commited 2016-07-05 02:28:07 +00:00
6718ec8b5f
Merge \"Unbreak unregisterNetworkCallback.\" into nyc-mr1-dev
am: 04401f0e0f

Change-Id: I35ee16554e17c503b1f5628629c2c0a48d85d399

Lorenzo Colitti   authored and   android-build-merger   commited 2016-07-05 02:19:18 +00:00
3e1d024327
Merge "Unbreak unregisterNetworkCallback." into nyc-mr1-dev
Lorenzo Colitti   authored and   Android (Google) Code Review   commited 2016-07-05 02:07:06 +00:00
04401f0e0f
Unbreak unregisterNetworkCallback.
http://ag/1194313 broke unregisterNetworkCallback because the
system does not parcel the type of the request back to the app.
So when the app calls unregisterNetworkCallback, the
NetworkRequest that's passed in does not have a type and thus
doesn't match the request in mNetworkRequests.

Fix this by parceling over the type as well.

This was not caught by the unit test because the unit test all
runs in the same process with no parceling.

Bug: 23113288
Change-Id: I58b2ed651b9bf5cbdcca5b25c3ca24db53cffdf1

Lorenzo Colitti   commited 2016-07-05 01:59:49 +09:00
cef9c490ad
Merge \\"Annotate public methods in ConnectivityService.\\" into nyc-mr1-dev am: ad7755209c
am: aa9dd65e57

Change-Id: I8b0c9ece0d9bfdf8d93628214485c0e059731a6a

Lorenzo Colitti   authored and   android-build-merger   commited 2016-07-04 16:30:21 +00:00
5189468c48
Merge \"Annotate public methods in ConnectivityService.\" into nyc-mr1-dev
am: ad7755209c

Change-Id: I065e2ceb351ea8af4310f6ef11f1af232fa2fc79

Lorenzo Colitti   authored and   android-build-merger   commited 2016-07-04 16:21:10 +00:00
aa9dd65e57
Make registerDefaultNetwork work on metered networks. am: 34eda2aa6f
am: 005ce5a697

Change-Id: Ief2f4c0073f87f7a7e7f33c322365dc4e8eefdeb

Lorenzo Colitti   authored and   android-build-merger   commited 2016-07-04 16:16:36 +00:00
4a2a5b0b54
Merge "Annotate public methods in ConnectivityService." into nyc-mr1-dev
TreeHugger Robot   authored and   Android (Google) Code Review   commited 2016-07-04 16:07:33 +00:00
ad7755209c
Make registerDefaultNetwork work on metered networks.
am: 34eda2aa6f

Change-Id: I2d5edc273df22e5c787f227820c1ce956adfe42c

Lorenzo Colitti   authored and   android-build-merger   commited 2016-07-04 16:06:51 +00:00
005ce5a697
Make registerDefaultNetwork work on metered networks.
Bug: 29927488
Change-Id: I3b705c2ab0d1493546ffa5185bb5b07d5e25c897

Lorenzo Colitti   commited 2016-07-04 23:18:12 +09:00
34eda2aa6f
Annotate public methods in ConnectivityService.
Ensure every public method is annotated with why it's public.
This can be either an @Override or @VisibleForTesting annotation
or a comment explaining why it's public.

Bug: 29927488
Change-Id: I3582aef7997dc0d723718ca5e3dd115647d22979

Lorenzo Colitti   commited 2016-07-04 12:58:29 +09:00
10e796c35d
Merge changes from topic \\'networkrequest_private\\' into nyc-mr1-dev am: 0317e03dc3
am: 6c9dbf4d48

Change-Id: I09231f4f4f3bd13f6b51fe8117eff7d002cf10dd

Lorenzo Colitti   authored and   android-build-merger   commited 2016-07-01 15:27:07 +00:00
ef767c8ea8
Merge changes from topic \'networkrequest_private\' into nyc-mr1-dev
am: 0317e03dc3

Change-Id: Ia063c378bd32fdb056c0ecdc0f721d32e9fa49af

Lorenzo Colitti   authored and   android-build-merger   commited 2016-07-01 15:20:21 +00:00
6c9dbf4d48