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
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
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
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
- 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
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
This allows NetworkRecommendationProviders to set this field on
returned WifiConfigurations.
Test: make
Bug: 33760009
Change-Id: I4d34272a1fb8d88bcc56cf4f00d8beadd06ac603
Merged-In: I4d34272a1fb8d88bcc56cf4f00d8beadd06ac603
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
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
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
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
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
Removing final makes providers easier to test using mocks.
Test: Build system image.
Change-Id: Iaaa30f73226e1d0cb0e9e68faa349e86986be72d
Merged-In: Iaaa30f73226e1d0cb0e9e68faa349e86986be72d
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
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
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
* 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."
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