Commit Graph

11374 Commits

Author SHA1 Message Date
James Mattis
105e23cb53 Merge "Adding API stubs for application network routing" am: 20a9e59e25 am: d8cf074a43 am: decb412854
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1478963

Change-Id: I22f8b7b15a0bc7643474f5119dd34cdddf5a8376
2020-11-06 19:19:46 +00:00
James Mattis
decb412854 Merge "Adding API stubs for application network routing" am: 20a9e59e25 am: d8cf074a43
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1478963

Change-Id: I7001e39dc59a509f10d7851cd9688b7b98ce0b95
2020-11-06 19:05:22 +00:00
James Mattis
d8cf074a43 Merge "Adding API stubs for application network routing" am: 20a9e59e25
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1478963

Change-Id: I293192102c800a9dd8f09c32f890728e802cc965
2020-11-06 17:32:56 +00:00
James Mattis
dcea9fb2d4 Adding API stubs for application network routing
Bug: 171795464
Test: atest FrameworksNetTests
Change-Id: Ib055aa37a7bf0c48c335307afc2258aa869c4267
2020-11-06 00:08:13 -08:00
James Mattis
ab87d08537 Merge "Adding multilayered requests to NetworkRequestInfo" am: f2c37de2ba am: a5bd693f29 am: bd74d7c875
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1486199

Change-Id: I8ce428771882b8f2e2e904ebba18acdf7be2a056
2020-11-06 06:03:37 +00:00
James Mattis
bd74d7c875 Merge "Adding multilayered requests to NetworkRequestInfo" am: f2c37de2ba am: a5bd693f29
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1486199

Change-Id: I3d013dc1a3caf9c41fbc835f2eb92df4e40bed33
2020-11-06 05:47:26 +00:00
James Mattis
a5bd693f29 Merge "Adding multilayered requests to NetworkRequestInfo" am: f2c37de2ba
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1486199

Change-Id: I57d85884e4bf6039cf645ed58e2c7b0c8fd404a2
2020-11-06 05:19:47 +00:00
James Mattis
7835f74bac Adding multilayered requests to NetworkRequestInfo
Updating NetworkRequestInfo for "multilayered requests" functionality so that
requests can support a network hierarchy. I.e., requests network
with capability A first and if not available, request network with
capability B. This CL is the first step in adding that support by
updating the request object from a single request to a collection.

Bug: 171991028
Test: atest FrameworksNetTests
atest NetworkStackTests
atest FrameworksNetIntegrationTests
atest NetworkStackIntegrationTests
atest CtsNetTestCasesLatestSdk

Change-Id: I64a124802986e4cf4aa7de158c6690fdf9851cb2
2020-11-05 13:55:50 -08:00
Paul Hu
bbc5a2473f Merge "Replace Context @hide APIs" am: f021a81854 am: 8fabfb25c3 am: fe50f2ab24
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1458063

Change-Id: Ib4aae2fd7eebd700928edc2c715df8de90b428a7
2020-11-05 09:38:40 +00:00
Paul Hu
c34ced274a Merge "Replace AppOpsManager @hide APIs" am: 12e9b2ecb5 am: 0631c7bc98 am: 35e3902531
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1469126

Change-Id: If33de767f397797a104bf2030ac4ca5f8928359f
2020-11-05 09:38:29 +00:00
Paul Hu
fe50f2ab24 Merge "Replace Context @hide APIs" am: f021a81854 am: 8fabfb25c3
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1458063

Change-Id: Iea56458847be39665e7660f048eec88147be27c3
2020-11-05 09:14:59 +00:00
Paul Hu
35e3902531 Merge "Replace AppOpsManager @hide APIs" am: 12e9b2ecb5 am: 0631c7bc98
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1469126

Change-Id: I9548c666d528e025b71f5d3b12b0c5ff2265eb23
2020-11-05 09:14:46 +00:00
Paul Hu
8fabfb25c3 Merge "Replace Context @hide APIs" am: f021a81854
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1458063

Change-Id: I914ee12abdcba7c53fb868425592d6458a797e23
2020-11-05 08:53:01 +00:00
Paul Hu
0631c7bc98 Merge "Replace AppOpsManager @hide APIs" am: 12e9b2ecb5
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1469126

Change-Id: I6222db7e8f966d7df17de9c46b5e26e715ecccf2
2020-11-05 08:45:52 +00:00
Paul Hu
f021a81854 Merge "Replace Context @hide APIs" 2020-11-05 08:05:09 +00:00
Paul Hu
12e9b2ecb5 Merge "Replace AppOpsManager @hide APIs" 2020-11-05 08:03:55 +00:00
James Mattis
4349a76d6f Merge "Adding @IgnoreUpTo for testOemPrivate" am: df86206d82 am: b15efe2545 am: 57675a19e0
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1487452

Change-Id: I49522105e82ee2d63fd84f7ab56fb3e11d87b5c7
2020-11-05 06:00:08 +00:00
James Mattis
57675a19e0 Merge "Adding @IgnoreUpTo for testOemPrivate" am: df86206d82 am: b15efe2545
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1487452

Change-Id: Ic5b96ccbba713327c70a62ba584129ab20f35db6
2020-11-05 05:49:10 +00:00
James Mattis
b15efe2545 Merge "Adding @IgnoreUpTo for testOemPrivate" am: df86206d82
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1487452

Change-Id: I92bd7437dede4ae4a4bb27dfbf68a5ae74553811
2020-11-05 05:24:33 +00:00
James Mattis
082528f4b6 Adding @IgnoreUpTo for testOemPrivate
Adding @IgnoreUpTo for NetworkCapabilitiesTest.testOemPrivate so that
this test can run on previous releases.

Bug: 172400600
Bug: 171505922
Test: atest CtsNetTestCasesLatestSdk:NetworkCapabilitiesTest
Change-Id: Ibc728c986ad6faeed78c631ca2675956b95c6ac1
2020-11-04 16:52:11 -08:00
Eran Messeri
c82f075f92 DO NOT MERGE: Introduce DPMS shim for active DO/PO check am: 5c91bdecce am: 84ca530ba7 am: 262771be94
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1486196

Change-Id: I76bfbffc3485cd07675ffc8c8c64f11a8a7d5d03
2020-11-04 13:00:13 +00:00
Eran Messeri
262771be94 DO NOT MERGE: Introduce DPMS shim for active DO/PO check am: 5c91bdecce am: 84ca530ba7
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1486196

Change-Id: I467120ce7e419a75749efac109609bb30cc35eff
2020-11-04 12:46:45 +00:00
Eran Messeri
84ca530ba7 DO NOT MERGE: Introduce DPMS shim for active DO/PO check am: 5c91bdecce
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1486196

Change-Id: I79e090d92c5bf17993f8e4f710581675eb72f2a9
2020-11-04 12:24:40 +00:00
Eran Messeri
5c91bdecce DO NOT MERGE: Introduce DPMS shim for active DO/PO check
Introduce a shim into DevicePolicyManagerInternal &
DevicePolicyManagerService so that NetworkStatsAccessTest would not
diverge from internal development branches.

The DevicePolicyManagerService refactoring on the internal branch
removed isActiveAdminWithPolicy in favour of isActiveDeviceOwner and
isActiveProfileOwner.

These methods are being made available in AOSP for
NetworkStatsAccessTest.

Bug: 170459325
Test: atest NetworkStatsAccessTest
Change-Id: Ic7e0898989fb8222aaba2b35436765c04eb3250c
2020-11-04 10:07:06 +00:00
paulhu
fa229ae8a5 Replace Context @hide APIs
Connectivity service module is using some Context @hide APIs but
they are not able to call after CS becomes a mainline module.
Thus, replace them with similar System APIs.

Bug: 170593746
Test: atest FrameworksNetTests
Test: Manully check that receiving intent and starting activity
      can work normally.
Change-Id: I0f5b53ce0da4e3fc0f927896e9a9e444048401bd
2020-11-04 00:02:42 +08:00
paulhu
1c15b17d78 Replace AppOpsManager @hide APIs
Connectivity service module is using some AppOpsManager @hide
APIs but they are not able to call after CS become a
mainline module. Thus, replace them with similar System APIs.

Bug: 170593746
Test: atest FrameworksNetTests
Change-Id: I51f66b64fcc3ebdbc2fddff8371eb8d9ff134137
2020-11-03 22:27:16 +08:00
Mathew Inwood
d771d6e94d Add maxTargetSdk restriction to unused APIs.
These are APIs that have @UnsupportedAppUsage but for which we don't
have any evidence of them currently being used, so should be safe to
remove from the unsupported list.

Bug: 170729553
Test: Treehugger
Merged-In: I8285daa8530260251ecad6f3f38f98e263629ca7
Change-Id: I626caf7c1fe46c5ab1f39c2895b42a34319f771a
2020-11-02 10:30:09 +00:00
Treehugger Robot
29001506d8 Merge "NetworkNotificationManager gets NotificationManager locally" am: a13966feea am: d0034c56c1 am: 0776d454a2
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1459882

Change-Id: Ib457623c1d204f8b83918a13c662335b4b9aded0
2020-10-30 11:25:49 +00:00
Treehugger Robot
0776d454a2 Merge "NetworkNotificationManager gets NotificationManager locally" am: a13966feea am: d0034c56c1
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1459882

Change-Id: I3663ea2b95ec7815e84fa0729c39591280a90847
2020-10-30 11:15:15 +00:00
Treehugger Robot
d0034c56c1 Merge "NetworkNotificationManager gets NotificationManager locally" am: a13966feea
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1459882

Change-Id: I1a3b685f04d7b4d7d5a028015e94742c83db2dc8
2020-10-30 10:37:17 +00:00
Paul Hu
6818725de8 Merge "Replace NotificationManager @hide APIs" am: 39516dec37 am: 9fead7cb6e am: 91bf3e71e3
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1452435

Change-Id: I41c548b42717f65e0e2421f1ad72e027408aa7ce
2020-10-30 04:51:53 +00:00
Paul Hu
91bf3e71e3 Merge "Replace NotificationManager @hide APIs" am: 39516dec37 am: 9fead7cb6e
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1452435

Change-Id: I89085c9a06abd61d987659f7283f8dfdc7718c3a
2020-10-30 04:40:38 +00:00
Paul Hu
9fead7cb6e Merge "Replace NotificationManager @hide APIs" am: 39516dec37
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1452435

Change-Id: I58d1c42c112855e43df6d6af4cd6e10373cff2bb
2020-10-30 04:00:36 +00:00
paulhu
13cafd92b9 NetworkNotificationManager gets NotificationManager locally
It's confusing that NetworkNotificationManager uses
NotificationManager to put up notifcation which is passed from
ConnectivityService. And that NotificationManager should be
gotten from a context with UserHandle.ALL because the
notification should notify to all users. But the future developer
may not know this and pass incorrect NotificationManager
probably. Therefore, adjust the design that
NetworkNotificationManager will get NotificationManager locally.

Bug: 170593746
Test: atest FrameworksNetTests
Change-Id: Id65c998052b7b223171c5194ea46b49d7e84729d
2020-10-30 03:37:50 +00:00
Paul Hu
39516dec37 Merge "Replace NotificationManager @hide APIs" 2020-10-30 03:36:40 +00:00
Chalard Jean
20b2858a92 Merge "Fix a bug where modern network agents start in UNKNOWN" am: 0512d7cd48 am: 8d783edbe8 am: b3dcc65424
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1460964

Change-Id: I9a6b1bbb4e0bfa9e902add0476aaa44d40d5198e
2020-10-29 13:52:57 +00:00
Chalard Jean
b3dcc65424 Merge "Fix a bug where modern network agents start in UNKNOWN" am: 0512d7cd48 am: 8d783edbe8
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1460964

Change-Id: I1acdfe14a14bfca15967efe2d97b653691e259f8
2020-10-29 13:30:39 +00:00
Chalard Jean
8d783edbe8 Merge "Fix a bug where modern network agents start in UNKNOWN" am: 0512d7cd48
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1460964

Change-Id: I69c5b8712791491552879c6d5aba5352ea03adfc
2020-10-29 13:10:05 +00:00
Chalard Jean
0512d7cd48 Merge "Fix a bug where modern network agents start in UNKNOWN" 2020-10-29 12:31:03 +00:00
Chalard Jean
a7f72cbe55 Fix a bug where modern network agents start in UNKNOWN
Modern network agents are supposed to have the following
lifecycle :
• Construct the agent
• Declare itself to connectivity by calling #register()
• Possibly do some setup
• Declare connected by calling #markConnected()
• Declare disconnected by calling #unregister()

Internally ConnectivityService still manages the state
with deprecated NetworkInfo, which has a lot of possible
detailed states, most of which are now unused. Internally,
the steps above translate to the states below :
• When the agent calls #register() it starts in state
  CONNECTING
• When it calls #markConnected() it goes to CONNECTED
• When it calls #unregister() it goes to DISCONNECTED which
  triggers the flow that disconnects it immediately
• ConnectivityService also synthesizes the SUSPENDED state
  under some situations, but that's not relevant here.

The translation above is done by the NetworkAgent class,
which translates #register(), #markConnected() and
The only valid lifecyle for new agents is thus :

CONNECTING → CONNECTED → disconnect
                 ↕         ↑
             SUSPENDED ───┘

Note that in the above scheme, there is no space for the
UNKNOWN state, which is only used by legacy network agents.
However, the constructor for NetworkInfo still starts with
UNKNOWN. Ideally the constructor for NetworkInfo would set
the info to CONNECTING instead, but this would be a very
visible change in behavior affecting many apps (especially
their tests), so for backward compatibility we can't do
that.

New network agents however don't expose their NetworkInfo
to the client code, so they can just be made to start in
CONNECTING the way it was meant.

Note that this didn't really have a concrete impact beyond
printing some logs as by and large the ConnectivityService
code handles UNKNOWN and CONNECTING the same way, or more
exactly it handles transitions to CONNECTED from UNKNOWN
and CONNECTING in the same way. The exception to this is
VPNs, which are not using the new agent API yet, and the
upcoming conversion is why this fix is actually needed now.

Bug: 170904131
Test: FrameworksNetTests NetworkStackTests
Test: new test in aosp/1460705
Change-Id: Ib7d906a7b29a0b9f000b90bc78558a7402852fa3
2020-10-29 12:30:44 +00:00
Treehugger Robot
1f8a2bda71 Merge "Replace hidden NMS permission control API" am: 67a478d08d am: 89f3f29524 am: a5c301c629
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1473957

Change-Id: Ie55d43f42235fbfc570f8088a9459dba99008799
2020-10-29 08:06:04 +00:00
Treehugger Robot
a5c301c629 Merge "Replace hidden NMS permission control API" am: 67a478d08d am: 89f3f29524
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1473957

Change-Id: I45135311ec026b75d1110614f609b851b72f543b
2020-10-29 07:47:31 +00:00
Treehugger Robot
89f3f29524 Merge "Replace hidden NMS permission control API" am: 67a478d08d
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1473957

Change-Id: I44840dc0c5ab4421976f606afcced0573e3dfe60
2020-10-29 07:34:41 +00:00
Treehugger Robot
67a478d08d Merge "Replace hidden NMS permission control API" 2020-10-29 07:03:37 +00:00
Xiao Ma
c95be48120 Merge changes from topic "revert-1353490-revert-1323251-ipv6_prov_loss_quirk_parcelable-DVBHZDYMHA-MDHWFKJABZ" am: 780d3d2115 am: ee3d2e049d am: f7808179b4
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1460265

Change-Id: I38ca7a3d1a07d511d99beb9fbe3eb48b265d40e9
2020-10-29 06:50:05 +00:00
Xiao Ma
9180884b13 Revert "Revert "Test IPv6ProvisioningLossParcelable in the NetworkAttributes""" am: ef20ba23a4 am: 8323b72ef0 am: c1d48c0444
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1460264

Change-Id: If0b8d031b80b9cd8315327211ede0be1a58df44f
2020-10-29 06:49:56 +00:00
Xiao Ma
f7808179b4 Merge changes from topic "revert-1353490-revert-1323251-ipv6_prov_loss_quirk_parcelable-DVBHZDYMHA-MDHWFKJABZ" am: 780d3d2115 am: ee3d2e049d
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1460265

Change-Id: Ibfd085b283caf6a531cbdf752e009317eb105287
2020-10-29 06:35:46 +00:00
Xiao Ma
c1d48c0444 Revert "Revert "Test IPv6ProvisioningLossParcelable in the NetworkAttributes""" am: ef20ba23a4 am: 8323b72ef0
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1460264

Change-Id: Ie6b10f73ac6508b83e240e74a215edbe58901be3
2020-10-29 06:35:44 +00:00
Xiao Ma
ee3d2e049d Merge changes from topic "revert-1353490-revert-1323251-ipv6_prov_loss_quirk_parcelable-DVBHZDYMHA-MDHWFKJABZ" am: 780d3d2115
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1460265

Change-Id: I49ce3e1c7794dc6db0e410cba481eb98144bc4e5
2020-10-29 06:17:22 +00:00
Chiachang Wang
fa1fc27d9b Merge changes I6a51d803,I162fae5c am: b75c584971 am: 18013cefe3 am: 2d6e0ab8e7
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1473228

Change-Id: I49cb16e2ae99687be9a4b72773901fa59b506138
2020-10-29 06:14:34 +00:00