Commit Graph

68198 Commits

Author SHA1 Message Date
Amin Shaikh
972e236e84 Support multiple caches in NetworkScoreService.
- Use RemoteCallbackList for managing multiple callbacks
- Add unregisterNetworkScoreCache to the service interface
- Added NetworkScoreServiceTest

Test: runtest frameworks-services

Bug: 32913019
Change-Id: I16ca1682acca9cbe403812e520394688a026414b
2016-12-07 15:52:33 -08:00
Treehugger Robot
faf3aa697f Merge "Clarify doc on NETWORK_RECOMMENDATIONS_ENABLED and WIFI_WAKEUP_ENABLED." 2016-12-07 23:00:26 +00:00
Jeff Sharkey
ba6f8c8bef Move dump() to dumpAsync(), more oneway calls.
When calling out to dump services hosted by external apps, use
dumpAsync() to avoid hanging if the remote process is wedged.

(cherry picked from commit 850c83e6da)

Test: builds, boots, runs with minimal logs triggered
Bug: 32715088

Merged-In: I70aa2666ae21dae8f09ded2063bed359c0b210c5

Change-Id: Ic2be10dc8478d613cea6e2c976b9987c250b86b7
2016-12-07 12:24:21 -08:00
Erik Kline
b406666cf5 Handle IpReachabilityMonitor errors better.
If construction of a new IpReachabilityMonitor throws an IAE then
log it and immediately call onProvisioningFailure().

Test: runtest frameworks-wifi
      passes, except for selectQualifiedNetworkDoesNotChooseDeletedEphemeral()
      which fails with an NPE for unrelated reasons.

Bug: 31038971
Bug: 31742703
Change-Id: Ie91b8bdd509d06ad54d062bf446e74c092eb096c
(cherry picked from commit e452660466)
2016-12-07 16:23:26 +09:00
Treehugger Robot
68ea36243d Merge "Fix crashing StrictJarFile due to doubled closing." 2016-12-07 01:40:48 +00:00
Stephen Chen
f1b75647a3 Clarify doc on NETWORK_RECOMMENDATIONS_ENABLED and WIFI_WAKEUP_ENABLED.
Bug: 32913919
Test: n/a
Change-Id: Ied075bdcc1ebb8f0a4bc0d3bf9758fa6719ce0b9
2016-12-06 16:21:14 -08:00
Bill Yi
82834baa35 Merge remote-tracking branch 'goog/stage-aosp-master' into HEAD 2016-12-06 15:17:16 -08:00
Treehugger Robot
800a4e753e Merge "API for requesting network recommendations." 2016-12-06 23:08:03 +00:00
Jeremy Joslin
d1daf6d22a API for requesting network recommendations.
Defining a new system API that will allow the system to request
network recommendations from a NetworkScoreService implementation.

Test: Coming in a future CL.
BUG: 32909424
Merged-In: I2d5c0a843b928b04e87c1862a78702a02fd54c31
Change-Id: Idd33095c6cd2f5b391796c900399f18a2c40fcc3
2016-12-06 12:48:30 -08:00
Treehugger Robot
5773d9702e Merge "Move dump() to dumpAsync(), more oneway calls." 2016-12-06 20:15:28 +00:00
Stephen Chen
45fdf32038 Merge "Add Settings.Global.NETWORK_RECOMMENDATIONS_ENABLED flag."
am: 70ae1bf4db

Change-Id: If3d13f94a131188ddbebc7a35c82ea357b37e022
2016-12-06 19:20:24 +00:00
Jeff Sharkey
b2c312a742 Move dump() to dumpAsync(), more oneway calls.
When calling out to dump services hosted by external apps, use
dumpAsync() to avoid hanging if the remote process is wedged.

Test: builds, boots, runs with minimal logs triggered
Bug: 32715088
Change-Id: I70aa2666ae21dae8f09ded2063bed359c0b210c5
Merged-In: I70aa2666ae21dae8f09ded2063bed359c0b210c5
2016-12-06 19:08:34 +00:00
Tomasz Mikolajewski
b061fc2bb5 Fix crashing StrictJarFile due to doubled closing.
If the constuctor throws, then the handles would be closed without
setting "closed" to true. As a result, the finalizer would close
the handles again, which would cause a crash on the native side.

Test: Unit tests are no longer flaky.
Bug: 33301253
Change-Id: I527ba38d5d65ce844258d894441d4fe16bac6e23
2016-12-06 10:05:05 +09:00
Stephen Chen
6a0c879de3 Add Settings.Global.NETWORK_RECOMMENDATIONS_ENABLED flag.
This flag enables the NetworkScoreService.requestRecommendations API,
defined in b/32909424.

Bug: 32913919
Bug: 32909424
Test: runtest --path
frameworks/base/packages/SettingsProvider/test/src/com/android/providers/settings/SettingsProviderTest.java

Change-Id: If592e4a2ec574929aa0c829c39ad4ce9b0317805
2016-12-05 17:01:57 -08:00
Lenka Trochtova
13a0519394 Introduce a new user restriction for disallowing Bluetooth.
Only the device owner will be able to set the restriction
and the restriction will prevent usage of Bluetooth on the
entire device - i.e. in all the users.

Test: cts-tradefed run cts -m CtsDevicePolicyManagerTestCases --test com.android.cts.devicepolicy.UserRestrictionsTest
Test: cts-tradefed run cts -m CtsDevicePolicyManagerTestCases --test com.android.cts.devicepolicy.DeviceOwnerTest#testBluetoothRestriction

Bug: 32895300

Merged-In: I2875cf178cb16eca1965d0ba965d1cd3d8db2ad5

Change-Id: I2875cf178cb16eca1965d0ba965d1cd3d8db2ad5
2016-12-05 11:53:34 +01:00
Lenka Trochtova
f15cf38311 Introduce a new user restriction for disallowing Bluetooth.
Only the device owner will be able to set the restriction
and the restriction will prevent usage of Bluetooth on the
entire device - i.e. in all the users.

Test: cts-tradefed run cts -m CtsDevicePolicyManagerTestCases --test com.android.cts.devicepolicy.UserRestrictionsTest
Test: cts-tradefed run cts -m CtsDevicePolicyManagerTestCases --test com.android.cts.devicepolicy.DeviceOwnerTest#testBluetoothRestriction

Bug: 32895300

Merged-In: I2875cf178cb16eca1965d0ba965d1cd3d8db2ad5

Change-Id: I2875cf178cb16eca1965d0ba965d1cd3d8db2ad5
2016-12-05 10:46:58 +01:00
Tobias Thierer
6e2d3fa82f Merge "Migrate StrictJarVerifier and ShortcutPackageInfo to java.util.Base64"
am: 1e498a96c1

Change-Id: I28b8deadc9386b8772bd94870809213fdddad7e6
2016-12-05 09:35:10 +00:00
Tobias Thierer
1e498a96c1 Merge "Migrate StrictJarVerifier and ShortcutPackageInfo to java.util.Base64" 2016-12-05 09:28:47 +00:00
Stephen Chen
d738140b8d Merge "Add Settings.Global.WIFI_WAKEUP_ENABLED flag."
am: d758ce1586

Change-Id: I1bf1effbb635d57980728555587e8056f630edb9
2016-12-03 04:16:06 +00:00
Treehugger Robot
d758ce1586 Merge "Add Settings.Global.WIFI_WAKEUP_ENABLED flag." 2016-12-02 23:41:36 +00:00
Robert Sesek
bbcd9d26b1 Merge "Add new hostingType for startProcessLocked() that selects using the WebViewZygote."
am: eda1af611f

Change-Id: I539fb728175c109a93cbff7d8929b584e88bb70c
2016-12-02 17:15:23 +00:00
Treehugger Robot
eda1af611f Merge "Add new hostingType for startProcessLocked() that selects using the WebViewZygote." 2016-12-02 17:02:31 +00:00
Tobias Thierer
9f00d71787 Migrate StrictJarVerifier and ShortcutPackageInfo to java.util.Base64
Previously, they weres using libcore.io.Base64, which is @deprecated.

The two implementations' encoders produce the exact same result.

The two implementations' decoders' behavior differs for malformed
input:
 - In case of error, libcore.io.Base64.decode() returns null while
   java.util.Base64.getDecoder().decode() throws.
 - java.util.Base64 tends to be stricter about rejecting malformed
   input; specifically, it allows neither whitespace nor unexpected
   '=' characters (should only occur in the padding) whereas
   libcore.io.Base64.decode() leniently allows them throughout the
   input.
 - if the input terminates prematurely, libcore.io.Base64 tends to
   return fewer bytes (stops at a four byte boundary).

The behavior differences for malformed Base64 encoded data should
not affect ShortcutPackageInfo because it should only need to deal
with XML attribute values written by itself, which are well-formed.
Note that this CL does not lead to any known changes of the encoding
step, so values written by earlier versions should not cause problems
when read by later versions of ShortcutPackageInfo.

StrictJarVerifier may now reject or behave differently for .jar /
.zip files with malformed attribute values but this seems okay since,
per its name, it is meant to be strict. For example, after this CL,
StrictJarVerifier will no longer accept algorithm + "-Digest"
attribute values with extra whitespace or padding characters as valid.

Test: Confirmed that the two implementations' encoders produce the
      same result by running the following code just before this CL:
      assertEquals(
          libcore.io.Base64.encode(allBytes()),
          Base64.getEncoder().encodeToString(allBytes()));
      where allBytes() returns a byte[] with values (byte) 0 .. (byte) 255
Test: Test that phone still boots after flashing code that includes
      this CL.
Test: CtsLibcoreTestCases

Bug: 31292683

Change-Id: I775d32f329f693514a8f14d87e1ef0d7a757e6c3
2016-12-02 16:20:53 +00:00
ltrochtova
8874fcf97f Revert "Introduce a new user restriction for disallowing Bluetooth."
This reverts commit 69f9d321ac.

Change-Id: I5859b262a741d1fe8e8b61e142eecf7d742d8d41
2016-12-01 20:50:53 +00:00
Lenka Trochtova
69f9d321ac Introduce a new user restriction for disallowing Bluetooth.
Only the device owner will be able to set the restriction
and the restriction will prevent usage of Bluetooth on
the  entire device - i.e. in all the users.

Test: cts-tradefed run cts -m  CtsDevicePolicyManagerTestCases --test com.android.cts.devicepolicy.UserRestrictionsTest
Test: cts-tradefed run cts -m  CtsDevicePolicyManagerTestCases --test com.android.cts.devicepolicy.DeviceOwnerTest#testBluetoothRestriction

Bug: 32895300

Change-Id: Iae77647b1e48be6b8efbeccdff6a3d468a0e174d
2016-12-01 10:56:51 +01:00
Stephen Chen
8ca96c1f3c Add Settings.Global.WIFI_WAKEUP_ENABLED flag.
Set the flag default to false. This addition is for the
Android Wi-Fi Snooze project:
https://docs.google.com/document/d/1zewDZ6Ne-qH7zKFDtcSx55f9jPauZwT5VvOs1uVNXf8/edit#

Bug: 32920000
Bug: 32913119
Test: runtest --path
frameworks/base/packages/SettingsProvider/test/src/com/android/providers/settings/SettingsProviderTest.java

Change-Id: I597d5dd643e8044315cc6d7553ae5740485a0552
2016-11-30 18:31:44 -08:00
Amin Shaikh
a8fc97d2de Merge "Refactor NetworkScoreAppManager for testing."
am: 3af97482f1

Change-Id: I99537b7841021704c162db6b8fe3d472ede1e991
2016-12-01 02:10:55 +00:00
Stephen Chen
6ef2ec0d80 Merge "Add ACTION_WIFI_SAVED_NETWORK_SETTINGS to Settings."
am: 6e54c31f0a

Change-Id: Ie3b4a3ed5e2858ce2b3446c300c984875201205c
2016-12-01 00:02:58 +00:00
Amin Shaikh
aa09aa0210 Refactor NetworkScoreAppManager for testing.
Test: runtest frameworks-services && runtest frameworks-core
Change-Id: Ie2172009e9ba0438050488fe0aea6408f852c2c2
2016-11-30 13:52:43 -08:00
Treehugger Robot
6e54c31f0a Merge "Add ACTION_WIFI_SAVED_NETWORK_SETTINGS to Settings." 2016-11-30 20:25:13 +00:00
Robert Sesek
c5f86647b1 Add new hostingType for startProcessLocked() that selects using the WebViewZygote.
Test: m
Test: angler boots
Test: Turn on Multiprocess WebView in Developer Options and launch the WebView
      Shell. The sandboxed_service parent process is the webview_zygote.

Bug: 21643067
Change-Id: I9dab548853372fd91f6bbe204cc8686ef2e94448
2016-11-29 11:08:49 -05:00
Stephen Chen
767e453cdf Add ACTION_WIFI_SAVED_NETWORK_SETTINGS to Settings.
Exposes an activity that deep links into saved network Settings.

Bug: 32738882
Test: gts test
Change-Id: Ic639b7543439bbe52941fa58a74a767a4a0f8a76
2016-11-28 16:26:16 -08:00
Hall Liu
01106c45ca Merge "Add removeState method to StateMachine"
am: 0310de1136

Change-Id: Ib7d8e435c76bc7bcd83d6350c3c0622bb44d6552
2016-11-28 20:58:43 +00:00
Hall Liu
b222d2045d Add removeState method to StateMachine
Method to be used by BluetoothRouteManager in Telecom.

Test: unit tests in Telecom
Change-Id: Icdd1a3d42224246a5f26100fabb26313ce83b14c
2016-11-23 11:52:58 -08:00
Jakub Pawlowski
673c0e5596 Merge "Bluetooth: report proper advertiser status on error"
am: b509957e62

Change-Id: I1bb0a029a9044c3931e158c7ef02ffee4cb0f1cd
2016-11-23 01:58:03 +00:00
Jakub Pawlowski
76f517a173 Bluetooth: report proper advertiser status on error
When advertiser is not started because too many advertisers are
registered, return proper error code.

Bug: 30622771
Test: sl4a ConcurrentBleAdvertisingTest
Change-Id: I57384ff30132e9a7ee17dcf191ff89baa7abf1ef
2016-11-22 13:38:15 -08:00
Martijn Coenen
8c05ff96fb Merge "Add SystemProperties.reportSyspropChanged()."
am: 45c0c6939f

Change-Id: I83890872ba76161cf2f9a35b23861ab21b452a0f
2016-11-22 09:49:15 +00:00
Treehugger Robot
45c0c6939f Merge "Add SystemProperties.reportSyspropChanged()." 2016-11-22 09:43:23 +00:00
Jeff Sharkey
db5ed5beb1 Merge "StrictMode to detect untagged network traffic."
am: 67fe28d925

Change-Id: I52cdce87d87ec503294e431c8f22e87235bdbf79
2016-11-21 21:43:58 +00:00
Treehugger Robot
67fe28d925 Merge "StrictMode to detect untagged network traffic." 2016-11-21 21:33:15 +00:00
Jeff Sharkey
313456c975 Merge "Stub Binder API."
am: 4db1632b3a

Change-Id: I00e7f39d525a1d6af9a07b192294060113a2f7c2
2016-11-21 20:21:25 +00:00
Jeff Sharkey
4db1632b3a Merge "Stub Binder API." 2016-11-21 20:10:29 +00:00
Jeff Sharkey
763a140796 StrictMode to detect untagged network traffic.
Define some constants for early use in AOSP code.

Test: builds, boots, all common traffic tagged
Bug: 30943431
Change-Id: Ia58a8933bccfddbc027afb78c63ae65bd71ce562
2016-11-21 12:15:16 -07:00
Jeff Sharkey
1324531355 Stub Binder API.
Provide a stub API for AOSP code to call.

Test: builds
Bug: 32715088
Change-Id: Iab74d269e795a722e82fd3fa304200d57d152f57
2016-11-21 18:11:25 +00:00
Martijn Coenen
0754b27b56 Add SystemProperties.reportSyspropChanged().
To support notifying libutils of system property
changes.

Bug: 31262344
Test: builds
Change-Id: Iea77532eaa84d00f7d640edd1e3a1da66afdadc5
2016-11-21 17:57:13 +00:00
Torne (Richard Coles)
1feb782f01 Merge "Precreate the classloader for the WebView."
am: 566b1c80e4

Change-Id: Ic79079748dae515cb8d89ef99148755ac65f1d47
2016-11-21 17:04:22 +00:00
Treehugger Robot
566b1c80e4 Merge "Precreate the classloader for the WebView." 2016-11-21 16:54:53 +00:00
Torne (Richard Coles)
3b6ca99b10 Precreate the classloader for the WebView.
We want to create the classloader for the WebView in advance in the
zygote so that it can preload Java and native code for its children, but
the zygote can't talk to the package manager (so doesn't have a
PackageInfo for the APK) and also doesn't have an ActivityThread, so
constructing a LoadedApk is difficult.

Instead, we use the fact that ApplicationLoaders contains a
process-global cache of classloaders for APKs, and prepopulate a cache
entry without constructing a LoadedApk. This requires making
ApplicationLoaders public. To calculate the correct library paths from
the information the zygote has, we reuse the logic in LoadedApk (which
is already public, and just needs a small change to allow a null
ActivityThread when checking for instrumentation).

The other parameters for classloader creation (target SDK, bundled app,
etc) are hardcoded to usable values for the WebView's case. WebView
never needs to use any system libraries that aren't public so claiming
it's not bundled is fine even when that isn't actually true, and WebView
will always target the current platform API level.

Once the classloader is created, look up the factory class and call
preloadInZygote on it to give it a chance to preload the native library
and do other shared initialisation.

Bug: 21643067
Test: enable multiprocess WebView, examine librank output to see sharing
Change-Id: I696ead637e3f7382bcc58cfaf61eac5921862015
2016-11-21 15:04:13 +00:00
Jerry Zhang
5cbd151d40 Refactored setCurrentFunction and setUsbDataUnlocked into single method.
am: 935372bfd6

Change-Id: I5436278e092f691c9179f7cc3709c4578b544e74
2016-11-17 00:12:50 +00:00
Jerry Zhang
b37d826204 Merge changes from topic 'usb_bugfixes-mirror-aosp-master'
* changes:
  Refactored setCurrentFunction and setUsbDataUnlocked into single method.
  Clean up persistent usb state on boot.
  Fixed handling of usb state during adb changes.
2016-11-16 23:59:33 +00:00