Commit Graph

277484 Commits

Author SHA1 Message Date
Sundeep Ghuman
0d79bdef27 Cherrypick: Define the calculateRankingScore method and Key.
Define the key to be used to store the rankingScoreOffset inside the
ScoredNetwork bundle. Implement a platform API method to calculate the
ranking score for a given rssi.

OCL: ag/1688711

Bug: 33049302
Test: Unit tests
Change-Id: Ia3fea2197d7c211a2313fced8713d79d8d5f4f6e
Merged-In: Ia3fea2197d7c211a2313fced8713d79d8d5f4f6e
Topic: ScoredNetworkRankingScore
2016-12-21 13:57:24 -08:00
Alex Klyubin
abdc2b47b3 Make users of MtpServer fill in DeviceInfo field values
This is part of weaning apps off accessing system identifiers via
system properties API. Apps should use android.os.Build API instead.

Bug: 33700679
Test: Enable MTP mode then check that mtp-detect output same as before this commit
Change-Id: I4e6696cdee18b9c3e987c432c095911e85a997db
2016-12-21 13:56:28 -08:00
Jeremy Joslin
b1365852cc Stay bound to the most current active scorer.
This fixes the following issue:

1) Scorer A is active and bound.
2) A change occurs to Scorer A such that it is no longer the selected
   scorer.
3) Scorer B is selected as the scorer and returned whenever
   getActiveScorer() is queried.
4) Scorer A is never unbound because it isn't seen as the active
   scorer.
5) Scorer B is never bound until its package changes in some way (or
   the feature is disabled/enabled).

Test: runtest frameworks-services -c com.android.server.NetworkScoreServiceTest + manual testing.
Change-Id: I40f055df472e2b9e7b07e6979a841dd4c0b794ce
Merged-In: I468a8c02a72f089f1fb778d150d945efe5485b88
2016-12-21 13:44:53 -08:00
Jeremy Joslin
29ed4a99bf Clear and restore the calling ID.
Clear and restore the calling identity in IPC methods after asserting
the caller has the required permissions.

Fixed 2 tests in NetworkScoreServiceTest that were failing due to a
recent refactor.

Test: runtest frameworks-services -c com.android.server.NetworkScoreServiceTest
BUG: 33781319
Change-Id: I562713df3d9455cdc02bf80a687940fb9daecd8f
Merged-In: Icd79751d12dcfe4af8026980aaa1f7bd463468dc
2016-12-21 13:39:10 -08:00
Jeff Sharkey
febd982cdd Merge "Avoid Calendar's unexpect change in snapToCycleDay()" 2016-12-21 21:11:20 +00:00
Treehugger Robot
a93e57f1ac Merge "Expose ScanResult#untrusted as a @SystemApi." 2016-12-21 19:47:32 +00:00
Amin Shaikh
3d18c621cb Expose ScanResult#untrusted as a @SystemApi.
- Expose ScanResult#untrusted to inform NetworkRecommendationProviders
  that a ScanResult does not correspond to a saved network.
- Add static construction methods and assertions to RecommendationResult

Test: runtest frameworks-services

Bug: 33490132
Change-Id: If7006040f63843c1c468c9d95c5c017383c5c5dd
Merged-In: If7006040f63843c1c468c9d95c5c017383c5c5dd
2016-12-21 11:46:22 -08:00
Shunta Sato
d18ffd8223 Avoid Calendar's unexpect change in snapToCycleDay()
Symptom:
Calendar object's certain field is unexpectedly changed after
using Calendar.add() method.

Detail and sample:
Following patch causes this issue.
- Switch network cycle calculation to use Calendar.
  https://android.googlesource.com/platform/frameworks/base/+/f2bead5

Call of Calendar.add() method might make a smaller field value
invariant. The smaller field means such a field of
Calendar.HOUR_OF_DAY, Calendar.MINUTE, Calendar.SECOND and so on
if Calendar.MONTH field is focused.
According to above, sometimes correct Calendar value won't be
acquired by original code.
To avoid unexpected change, it requires initialization toward
each smaller field after Calendar.add() call.

Solutions:
Calendar.DAY_OF_MONTH, Calendar.HOUR_OF_DAY, Calendar.MINUTE,
and Calendar.SECOND fields is set to 0 after added value to
Calendar.MONTH field.

Bug: 32724903
Author: Shigeki Yokomichi <shigeki.x.yokomichi@sonymobile.com>
Change-Id: I7af6391653be21786b662b2f8eaad10c413733c1
2016-12-21 12:44:30 -07:00
Steven Moreland
520d12c53c HwBinder: fail gracefully for device w/o hwbinder
Test: compiles
Change-Id: I03ffd0d7480c5771634977e30ccf02b39f69f8ba
2016-12-21 11:02:49 -08:00
Jeff Sharkey
48d5d6cda8 Merge "Reconnect to installd when it restarts." 2016-12-21 18:45:46 +00:00
Jeff Sharkey
9f2f2183fc Reconnect to installd when it restarts.
Test: builds, boots, reconnects when installd dies
Bug: 33695164
Change-Id: I29769a111783095f742ad81af779a7403ca52ff3
2016-12-21 09:19:08 -07:00
Calin Juravle
f23ea2ca62 Merge "Report non-primary dex files loads to PM" 2016-12-21 09:57:41 +00:00
Treehugger Robot
d9ce420d9a Merge "Fix incorrect FIFO cgroup assignment." 2016-12-21 01:47:56 +00:00
Treehugger Robot
c1940ef392 Merge "Change fillColor for Wi-Fi badges to #FFFFFF." 2016-12-21 01:00:19 +00:00
Treehugger Robot
31a8f712ab Merge "Create and implement a CacheListener inside WifiNetworkScoreCache." 2016-12-21 00:28:48 +00:00
Amin Shaikh
70b1c6ab40 Change fillColor for Wi-Fi badges to #FFFFFF.
Bug: 33778046
Test: make
Change-Id: I0cfc2c6d682a2f13e665563fc1c54fa19324af53
2016-12-20 15:28:34 -08:00
Sundeep Ghuman
d76e65bead Create and implement a CacheListener inside WifiNetworkScoreCache.
Bug: 33041117
Test: Unit tests
Change-Id: Ic07522062f79223079b84c49210fcfc0217ecd38
2016-12-20 15:07:01 -08:00
Treehugger Robot
f456ddf3fd Merge "Make WifiConfiguration#meteredHint a @SystemApi" 2016-12-20 22:24:13 +00:00
Tim Murray
20375fe124 Fix incorrect FIFO cgroup assignment.
bug 33745094
Test: builds

Change-Id: I46eefc8ea6f17ca3795f4743692ddfea36d5db0f
2016-12-20 14:04:44 -08:00
Hall Liu
26e5096364 Merge "Adds carrier config to determine if high definition audio is displayed" 2016-12-20 21:13:31 +00:00
Andre Eisenbach
8e9551bacf Merge "Bluetooth: persist state when turning on from BLE" 2016-12-20 21:11:59 +00:00
Marie Janssen
e0bfa2efa2 Bluetooth: persist state when turning on from BLE
Test: in BLE_ON state, turn to full on, reboot phone
Bug: 33777496
Change-Id: I246d6ff0dcb81d66aa915ef443040d6fc3c98310
2016-12-20 21:11:35 +00:00
Amin Shaikh
d3dfd3b8e9 Make WifiConfiguration#meteredHint a @SystemApi
This allows NetworkRecommendationProviders to set this field on
returned WifiConfigurations.

Test: make
Bug: 33760009
Change-Id: I4d34272a1fb8d88bcc56cf4f00d8beadd06ac603
Merged-In: I4d34272a1fb8d88bcc56cf4f00d8beadd06ac603
2016-12-20 12:46:50 -08:00
Treehugger Robot
edb8982c31 Merge "Add Wi-Fi quality badge icons." 2016-12-20 20:13:59 +00:00
Amin Shaikh
e2e395e146 Add Wi-Fi quality badge icons.
Test: make
Bug: 33705924
Change-Id: I6ae9fab369151e6c2d3769d7ba4a20103368f0a0
2016-12-20 10:42:25 -08:00
Alex Klyubin
f420b91e26 Merge "Permit 65535 byte ZIP comments and empty Central Directory" 2016-12-20 18:33:29 +00:00
Nick Kralevich
b0e5079b5d LocalSocketImpl.cpp: Set O_CLOEXEC on received FDs
Set O_CLOEXEC on received file descriptors. This prevents FD leakage
across an exec boundary. Please see the description of O_CLOEXEC in "man
2 open" for the reasons why this is useful.

Test: Device boots and no observed errors.
Change-Id: Id0d9c9d71efb25dacb26d5d98d93fc3b72c1b6ae
2016-12-20 07:14:49 -08:00
Treehugger Robot
1e814b3928 Merge "Implement the request and recommend calls." 2016-12-20 06:16:03 +00:00
Treehugger Robot
470d256519 Merge "Implement the discovery of a network recommendation provider." 2016-12-20 03:16:32 +00:00
Jeremy Joslin
36d4c48496 Implement the request and recommend calls.
Implemented requestRecommendation() and requestScores() to call
through to the bound network recommendation provider if available.

BUG: 33593157
BUG: 33668692
Test: runtest frameworks-services -c com.android.server.NetworkScoreServiceTest
Change-Id: I055251fa94d93d4ea4e5001c4ec6c1dfb626d1b2
Merged-In: I8e2ed73dc6876deb1a8bd47bcaeaca8db68f3a44
2016-12-19 17:53:47 -08:00
Jeremy Joslin
b8418ac89a Implement the discovery of a network recommendation provider.
Updated the NetworkScorerAppManager to examine the list of configured
network recommendation providers and to select the first valid
provider.

As part of this update the old logic of looking for a valid network
scorer has been removed. Scorers/recommendation providers are only
selected from the configured list now. The setActiveScorer() method
has been deprecated as a result.

The NetworkScoreService has been updated to monitor the list of
potential recommendation providers and to reevaluate the binding
whenever they change. It also monitors the new setting for
NETWORK_RECOMMENDATIONS_ENABLED to connect or disconnect from the
provider as needed.

Test: runtest frameworks-services -c com.android.server.NetworkScoreServiceTest
BUG: 33158362
Change-Id: I450981261aa5355c1c91ec2e3a0a3b58cc65316b
Merged-In: I42aeb5223da794f71f7e58cb1bdf18817200cbf2
2016-12-19 17:53:47 -08:00
Treehugger Robot
5bc305b97c Merge "Remove ~1/3 of the installd calls at boot." 2016-12-20 01:06:23 +00:00
Jeff Sharkey
1c6f723973 Remove ~1/3 of the installd calls at boot.
When preparing CE storage for an app, we always perform a second call
to extract any newly created CE directory inode.  Let's simplify this
and just return the inode number from the createAppData() call.

Test: builds, boots, reads CE inodes after wipe
Bug: 33463450
Change-Id: I9b73da576800b56d7d0961dd4deb0b6a546acbe7
2016-12-19 16:39:54 -07:00
Treehugger Robot
5fdc86fb27 Merge "Fix ScanResult array parceling." 2016-12-19 21:57:05 +00:00
Treehugger Robot
b60d7b334c Merge "Remove "final" from ResultCallback." 2016-12-19 20:54:14 +00:00
Alex Klyubin
9694657967 Permit 65535 byte ZIP comments and empty Central Directory
This fixes two cosmetic issues in APK Signature Scheme v2 signature
verifier in Android Package Manager:
* Accept APKs with ZIP End of Central Directory comment of length
  65535. Previously, only comments of length 65534 were accepted due
  to a off by one bug.
* Accept APKs with empty ZIP Central Directory.

These issues should not affect actual APKs because they cannot have an
empty ZIP Central Directory (they must contain at least the
AndroidManifest.xml entry) and shouldn't contain any comments in ZIP
End of Central Directory.

Test: cts-tradefed run singleCommand cts --skip-device-info --skip-preconditions --skip-connectivity-check --abi arm64-v8a --module CtsAppSecurityHostTestCases -t android.appsecurity.cts.PkgInstallSignatureVerificationTest
Change-Id: I461c43472fa97c04e7579d129a6053e44233adb7
2016-12-19 12:53:32 -08:00
Joe LaPenna
68685240f5 Remove "final" from ResultCallback.
Removing final makes providers easier to test using mocks.

Test: Build system image.

Change-Id: Iaaa30f73226e1d0cb0e9e68faa349e86986be72d
Merged-In: Iaaa30f73226e1d0cb0e9e68faa349e86986be72d
2016-12-19 11:25:45 -08:00
Jeremy Joslin
ab60cb6a6d Fix ScanResult array parceling.
readParcelableArray() wasn't working as expected so I just parceled
the array myself.

Test: adb shell am instrument -e class android.net.RecommendationRequestTest  -w com.android.frameworks.coretests/android.support.test.runner.AndroidJUnitRunner
Change-Id: I83939d17769930b707b8bc579542c74a05e31d19
Merged-In: I47bc31adbedea817feaa5953cb6ee48506f9c6d6
2016-12-19 09:43:34 -08:00
Calin Juravle
9abb501075 Report non-primary dex files loads to PM
Scaffold for the reporting of non-primary dex files loads to the package
manager.

This will enable:
1) monitoring and compilation of secondary dex file
2) better way to track foreign dex file usage (used to determined the
compilation filter of apks).

Test: device boots
Bug: 32871170

(cherry picked from commit 8d2a51f1b8)

Change-Id: I61e65aee471798fbc7a18938647051274c3a058a
2016-12-19 17:28:46 +00:00
Treehugger Robot
9ab94e15c7 Merge "Clean up local hprofs" 2016-12-17 01:54:34 +00:00
Michael Rosenfeld
2b62809c70 Clean up local hprofs
* After use
* Upon failure

Test: manual tool use
Change-Id: I2669e190c3792522c121158ea2aec84fe577c9e3
2016-12-16 16:24:29 -08:00
Marie Janssen
e2c22e38d5 Merge "Bluetooth: fix issues re-enabling after crash" 2016-12-16 22:56:59 +00:00
Marie Janssen
ed50bbcffd Bluetooth: fix issues re-enabling after crash
When Bluetooth crashes, sometimes an LE app restarts it before
ActivityManager gets a chance.  In this case, the Bluetooth manager
would assume the state should be LE only and did not continue to fully
enabled.

Luckily in this case the persisted system state is also ON.  Use the
persisted state as information about whether we should be fully enabled.

Test: basic sanity check, forced crash of BT
Bug: 33632976
Change-Id: I546d7abccb82a26fcca2eb70d6d7c76e9510404e
2016-12-16 22:50:13 +00:00
Philip P. Moltmann
08bff42ef4 Merge "Increment vers of PrintRecommendationService" 2016-12-16 22:36:11 +00:00
Treehugger Robot
d995c94426 Merge changes Ic85892b4,I627e47c6
* changes:
  Make sure Zygote is running at process priority 0 after VM has started.
  Revert "Add boost to increase the load on newly-forked zygote processes."
2016-12-16 22:20:25 +00:00
Treehugger Robot
f8882ae834 Merge "Add the webview zygote socket to the zygote whitelist." 2016-12-16 21:25:35 +00:00
Philip P. Moltmann
c56da03d06 Increment vers of PrintRecommendationService
as the Samsung PlugIn was updated.

Test: Let the service generate some recommendations
Change-Id: Ief7ea4f1dddfee92aa9fa83ff53b296ced0e3b55
2016-12-16 12:52:53 -08:00
Treehugger Robot
0b4df21aac Merge "Set com.android.networkrecommendation as the default network recommendation service." 2016-12-16 20:23:48 +00:00
Andreas Gampe
733d007279 Merge changes Ia4bec085,I59095f2a
* changes:
  Enable logwrapper functionality on user builds
  Zygote: Add invoke-with to zygote protocol
2016-12-16 19:24:13 +00:00
Torne (Richard Coles)
898fd69451 Add the webview zygote socket to the zygote whitelist.
Allow the webview zygote socket to be open at time of fork, so that
webview renderers can be forked successfully.

(cherry picked from commit a7fcb2bc2a)

Test: WebView functions correctly with multiprocess dev setting enabled
Bug: 21643067
Change-Id: I312846433a43a8e4548cb2f98b96b56acf9f5333
2016-12-16 10:53:35 -08:00