This commit builds on top of prior API commits. It
adds code to the system server, but in a disabled way.
The system server is responsible for monitoring two
(configured) package names: one for the "updater app"
(provided by the platform) and one for the "data app"
(provided by the OEM). When either package changes
the updater app is triggered via a privileged
intent.
The updater is then required to communicate with the
data app and report back to the system server.
Unit tests are included for the major components.
To run:
make -j30 FrameworksServicesTests
adb install -r -g "out/target/product/angler/data/app/FrameworksServicesTests/FrameworksServicesTests.apk"
adb shell am instrument -e package com.android.server.timezone -w com.android.frameworks.servicestests \
"com.android.frameworks.servicestests/android.support.test.runner.AndroidJUnitRunner"
Test: See above.
Bug: 31008728
Merged-In: I8f82cdcc2b574778a7e0d0184270f305b69ee17b
Change-Id: I8f82cdcc2b574778a7e0d0184270f305b69ee17b
We cannot compile from scratch for strip APK. So
if getDexOptNeeded returns NotNeeded, pretend there was
a compiler filter change, in order to pick up the vdex file.
bug: 37558732
Test: "adb shell cmd package compile" of a stripped /system apk
Change-Id: I531010e01e44adfa300872c1739c49dab7292317
The check in LightImpl::setLightLocked skips HAL call if light
parameters aren't changed. During initialization these parameters
are zeroed, thus it's not possible to turn the light off at the
startup.
As an example this fixes the issue with "stuck" battery light
in the following scenario:
1. Device has secure start-up option set (either pin or pattern).
2. Charger is connected at the startup and battery light shows the
charging state on pin or pattern prompt.
3. Device is unlocked and charger disconnected after some time,
e.g. after com.android.server.lights.LightsService restarted.
4. The battery light is not off and stuck in the previous state
until charger is connected / disconnected again.
Bug: 37662368
Test: manual - follow the above step-by-step
Change-Id: I45470e945fe4d26d37a5641dfff3311968f51ee4
This patch disentangles the creation of NativeDaemonConnector from the
creation of NsdService by introducing a wrapper type DaemonConnection.
This allows to mock this dependency in unit tests.
Test: enhanced previously introduced new tests.
Bug: 37013369, 33298084
Change-Id: I894b7cddfc509f86d0134d214c88c063b81b5e0a
Limit btsnoop file size by rotating between snoop files. The rotation occurrs
when a fixed number of packets have been logged and will start overwriting
the older file.
Bug: 35998031
Test: Enable snoop logs from developer options and let logs get large
Merged-In: I40d5da4c1b1c9b45908e5790d130f1c5e804c773
Change-Id: I40d5da4c1b1c9b45908e5790d130f1c5e804c773
Install single APP in any user space except Owner user.
The APP will show a notification when call startForeground in Service Component with
Notification which without SmallIcon.
But when you click the notificaiton ,you can't go to the InstalledAppDetails Activity.
Bug:https://code.google.com/p/android/issues/detail?id=330486
Change-Id: I9545c37bf1a36515813cbf1124c82c1c0fc3ad21
Signed-off-by: luozhanwei <luozhanwei@xiaomi.com>
- Deduplicate code in DumpStackFileObserver, ensure consistent behavior at addition use site
- Fix bug in DumpStackFileObserver where closed state was not reset
- Align TRACE_DUMP_TIMEOUT_MS with frameworks/native/cmds/dumpstate/utils.cpp
- Fallback to Debug.dumpNativeBacktraceToFileTimeout on timeout
- Share timeout constant with other Debug.dumpNativeBacktraceToFileTimeout caller
Test: Insert 1s sleep in system/bt/btif/src/bluetooth.cc is_profile to trigger ANR
Test: Insert hang into art/runtime/signal_catcher.cc after "reacting to signal"
Bug: 35962833
(cherry picked from commit beed965c25)
Merged-In: I6b5cc3f106f1e2b49400e382b8ad71ddbd4685f3
Change-Id: Ia2024bfa54a15a57821958d69b442d0bc9985eb6
This patch extracts into BitUtils byte manipulation helper methods
and unsigned type manipulation helper methods from ApfFilter into
an independent and reusable structure.
Test: $ runtest frameworks-net
Change-Id: I0f33af10457a63dbde5983f14353a79b8cd877d9
Wifi Aware networks are per app - i.e. a requestor gets
a dedicated network. Change verifies that the only the
original requestor matches the created network (using UID).
Bug: 36053921
Test: Integration (sl4a) tests
Change-Id: I4ff3994731dd7ccb88e2bea333d1e6905b136f02
This patch cleanups conversion of boolean values to ints when reading
configuration values or sending Messages whose arg1 or arg2 has boolean
semantics.
Test: runtest frameworks-net
Change-Id: I5187d17cd746486f63b1c410d191c30edd93ff6f
This patch moves reportNetworkConnectivity onto the handler of
ConnectivityService.
This allows:
- to inspect NetworkAgentInfo on the ConnectivityService handler,
which is always more correct than doing so on a Binder thread.
- to improve locking policies around NetworkAgentInfo.
Test: $ runtest frameworks-net
Bug: 37119619, 36902662
Change-Id: I49a765826e65c29a1995242290e5e7544112c94e
There are intermittent issues where either the returned Bluetooth
MAC address to Java framework is uninitialized or this address update
arrives too late. This fix will do 2 things:
(1) Returns error when MAC address is unavailable in the native code.
(2) Updates the MAC address later by adding a new broadcast event.
Test: Check address for these cases: factory reset, system reboot, and
Bluetooth re-enable.
Bug: 36709382
Change-Id: I09720193e38fdf9139e1bb146f8e1847e2b65b1a
And also remove some small code duplication (checkNotNull).
Test: built, flashed, runtest frameworks-net
Change-Id: Id6c13bca9d12f70b88806032e0a4fa198efbedc6
Symptom:
AppOps verified the incorrect package of calling tether state
changing API.
It threw SecurityException by mistake.
Solution:
Pass the correct package name to enforceTetherChangePermission.
Bug: 32931147
Change-Id: Ia1167f26f556678b189a24a4a716f1a7e5cb12eb
As we dexopt all the code paths of a package, we now append the code
paths to the list of shared libraries. These paths are passed as
relative paths since the apks are staged during installation, and are
not where they will be at runtime.
Part of a multi-project change.
Bug: 34169257
Test: cts-tradefed run singleCommand cts -d --module
CtsAppSecurityHostTestCases -t android.appsecurity.cts.SplitTests
Merged-In: I73823ca575560cbd445d78a6cfbfc72031943265
(cherry-picked from commit 16d4843433e024100b4ecd183f827ad5bd8772a6)
Change-Id: I943bf8234899e1b25d4eb5e98af15d9150a7a842
The previous version could trigger a Log.wtf() if an error occured within
ServingState.enter() that caused a transition while a tranistion was
already in flight.
Test: as follows
- build
- flashed
- booted
- "runtest frameworks-net" passes
Bug: 31466854
Change-Id: I66a47caf22e39ab4ad7f4ddd60940e9fe1580729
This patch introduces a new settings value to specify more than one url
for the fallback http probe in addition to the existing settings value.
If more than one url exists, a network will rotate urls for the fallback
probe one by one everytime the fallback probe is sent.
(not like commit 0908daaaf0, this patch
uses a comma to separate fallback urls, which works as expected with
Java's String.split())
Test: built, flashed, tested manually with various portal networks.
Bug: 36532213
Change-Id: I3c010bfee5b99db03a500776fbf47959a29d0578