Commit Graph

893 Commits

Author SHA1 Message Date
Makoto Onuki
50e00c8dc4 Default to FULL synchronous mode for sqlite DBs in system server
Test: change pin and immediately crash the kernel with
adb shell 'su root sh -c "echo c >/proc/sysrq-trigger"' and boot
Bug: 112175067

Change-Id: Ia5f43f3118e2297fbea43c805ef2f4577bf8a9bf
2018-08-09 11:00:54 -07:00
TreeHugger Robot
f618905a6e Merge "Fix WM input limitations on secondary displays (1/N)" 2018-07-26 12:06:28 +00:00
Wale Ogunwale
590c716f8c Merge "Moved URI grants code out of ActivityManagerService to its own service (13/n)" 2018-07-26 03:56:08 +00:00
Arthur Hung
95b38a906f Fix WM input limitations on secondary displays (1/N)
- One DisplayContent include one InputMonitor.
- For customized inputconsumers, they can be handled by DisplayContent.
- Extract InputManagerCallback to communicated InputManagerService.
- All windows need pass displayId to InputWindowHandle.

Bug: 111363643
Test: atest WindowManagerSmokeTest
Test: atest DisplayContentTests
Change-Id: Iaaca7d135a11c55a78bcf1f81918599b3d160106
2018-07-25 17:47:51 +08:00
Michael Kwan
7f70fc7bef Watch type devices currently do not support instant apps, prevent
related services from launching.

Bug: 111598607
Test: manual test
Change-Id: I5cc6909ecb287ece5b964ea6c7c685dbe767c895
2018-07-24 17:15:05 +00:00
Wale Ogunwale
6d50dcc8af Moved URI grants code out of ActivityManagerService to its own service (13/n)
Allows for other services like window manager to call uri grants without
holding AM service lock.

Bug: 80414790
Test: Existing tests pass.
Change-Id: Ie5b4ddb19a2cedff09332dbeb56bcd9292fd18ac
2018-07-23 16:37:46 -07:00
Rhed Jao
8a39cef7f8 Update AccessibilityManagerService to use SystemService
Bug: 70221242
Test: atest CtsAccessibilityServiceTestCases
Change-Id: Icdf0772d0be93168a954fdd746cada4d5d507eb4
2018-07-18 13:42:35 +08:00
Olivier Gaillard
1d7f615eec Add experiment flag to control binder call stats.
For instance, to enabled detailed tracking locally.
adb shell settings put global binder_calls_stats detailed_tracking=true

Also adds the ability to turn off data collection completely and
changing the sampling interval. Uploading data through westworld can
re-use the same flag once implemented.

Test: Unit tested

Change-Id: I808c9902b8124ab643d9b197703d537da040ae3e
2018-07-04 13:36:46 +01:00
Neil Fuller
0e44c66e08 Prepare for migration to the time detector service
Paves the way for moving more behavior to the time detector
service from the NetworkTimeUpdateService.

The NewNetworkTimeUpdateService is effectively identical to
the OldNetworkTimeUpdateService in this initial commit.

Bug: 78217059
Test: build / boot
Merged-In: Ica9fa9b61c849e034d76c0faae5693b60a4a197f
Change-Id: Ica9fa9b61c849e034d76c0faae5693b60a4a197f
2018-06-26 10:14:17 +01:00
Neil Fuller
4d9f7a8bc3 Merge "Minimum viable TimeZoneDetectorService" 2018-06-25 18:47:39 +00:00
TreeHugger Robot
1248d0db95 Merge "Introduced WindowProcessController/Listener (10/n)" 2018-06-23 05:52:22 +00:00
Wale Ogunwale
9e4f3e077f Introduced WindowProcessController/Listener (10/n)
One heavy dependence between the current AMS service and activities
is process management which is heavy affected by activities and their
current state. We introduce WindowProcessController and WindowProcessListener
objects as a structured way for the process changes in AM package to
be communicated to the WM package and WindowProcessListner for activity
changes in the WM package to the communicated back to the AM package.
The ProcessRecord object in AM will own the WindowProcessController object
and also implement the WindowProcessListener.

Test: Existing tests pass
Test: go/wm-smoke-auto
Bug: 80414790
Change-Id: I9e96e841b0f95e99a597cb4629fa5d2fe45760b6
2018-06-22 14:26:24 -07:00
TreeHugger Robot
abe78cd313 Merge changes from topic "biometrics-face"
* changes:
  5/n: Move FaceService to biometrics directory
  4/n: Add face authentication framework
2018-06-22 18:44:27 +00:00
Kevin Chyn
2ffadb38bc 5/n: Move FaceService to biometrics directory
Bug: 110387294

Test: builds, observable effect on devices (as expected)
Change-Id: Iaf0814c3c19aa9fa448e250cb3a161bd11fd935e
2018-06-21 17:00:07 -07:00
Gilad Bretter
cb51b8b847 4/n: Add face authentication framework
This change is cherry-picked and rebased from AOSP
https://android-review.googlesource.com/c/platform/frameworks/base/+/660242

Add face recognition as an identification method, following fingerprint
design. Unlike fingerprint, only one face template can be enrolled per
user, and a vendor message is passed from the HAL all the way to the
client callback to allow GUI indication about the enrolled face
templates.

Add FaceAuthenticationManager and FaceService.
Add face authentication capability to TrustManager and Keyguard.
Modify TrustManager and KeyguardUpdateMonitorCallback fingerprint code
to support generic biometric method to eliminate duplications.
Add BiometricSourceType enum to keep track of the specific biometric
method.

Test: biometric authentication still works on the device

Fixes: 110385761

Change-Id: I5d04fe69a112c13d3ef7330b9c08c146e36c5335
Signed-off-by: Gilad Bretter <gilad.bretter@intel.com>
2018-06-21 17:00:07 -07:00
Neil Fuller
7fb88c3928 Minimum viable TimeZoneDetectorService
This is a do-nothing TimeZoneDetectorService that can be
populated in following commits. A temporary method has been
added so the service has one method.

Unit tests can be run with:

atest FrameworksServicesTests:TimeZoneDetectorServiceTest

Test: build / boot
Test: See above
Change-Id: I565fb5dd2f18b7aac2e5779d346bfe69e9da02af
2018-06-21 10:28:47 +01:00
Kevin Chyn
551767618e Merge changes from topic "biometric-refactor"
* changes:
  2/n: Refactor out common BiometricService code
  1/n: Move fingerprint-service related code to biometrics/fingerprint
2018-06-20 03:47:53 +00:00
Kevin Chyn
95d628ef86 1/n: Move fingerprint-service related code to biometrics/fingerprint
Bug: 109900227

Test: builds
Change-Id: I973c816d75c48ed838c1638c45d728b9df4d11ef
2018-06-19 16:09:06 -07:00
Wale Ogunwale
16e505a326 Moved mRecentTasks to ActivityManagerTaskService (4/n)
Test: Existing tests pass
Test: go/wm-smoke-auto
Bug: 80414790
Change-Id: I7e48eaf66200f689757578461076e9288b862b33
2018-06-17 09:39:46 -07:00
TreeHugger Robot
6006f76ad7 Merge "Split interfaces and service for activities from current AM interfaces (1/n)" 2018-06-12 18:18:48 +00:00
Damien Bargiacchi
ae4cb67343 Start the WearPowerService with the other Wear system services
The WearPowerService is in charge of coordinating and keeping track of devices and state concerned
with power.

Bug: 77293569
Change-Id: Ia40ad44a53ef6872dd7ebefd58e17179126dde92
2018-06-07 16:11:34 -07:00
Wale Ogunwale
65ebd955e1 Split interfaces and service for activities from current AM interfaces (1/n)
First step in unifying the window hierarchy that is currently split
within AM and WM packages. We separate the interfaces and service dealing
with activities and their containers (tasks, stack, display) from the
rest of AM interfaces and services. This will allow us to move the new
interfaces and services to WM when the internal states are cleaned-up.

Test: Existing tests pass
Test: go/wm-smoke-auto
Bug: 80414790
Change-Id: Ide9b3f89123b768cdbd3e3878113c7a8021187f3
2018-06-06 18:26:21 -07:00
Alice Sheng
59ca58c1f5 Merge "Clean up Wear CPU scaling and swap experiments." 2018-06-06 21:35:01 +00:00
Alice Sheng
8385c0d5b5 Clean up Wear CPU scaling and swap experiments.
The experiments are over now, cleaning up code.

Change-Id: I145b66415d96112535b93385bd0613c2d3d33e46
2018-06-06 09:42:25 -07:00
Neil Fuller
7bb9fcbc45 Merge "Remove CommonClock / CommonTimeManagementService" 2018-06-06 15:59:44 +00:00
Neil Fuller
ea8a738581 Remove CommonClock / CommonTimeManagementService
The service and associated code is unused.

Bug: 80462439
Test: build / boot
Change-Id: Ibdfab1b7d2951a0c45e07bd47850af037990841b
2018-06-04 19:26:29 +01:00
Neil Fuller
feeee682a2 Minimum viable TimeDetectorService
This is a do-nothing DeviceContextualizerService that can be
populated in following commits. A temporary method has been
added so the service has one method.

Unit tests can be run with:

atest FrameworksServicesTests:TimeDetectorServiceTest

Test: build / boot
Test: See above
Change-Id: I9e4eac70b944441f34491315cd1ce7fa2b9ae150
2018-05-31 09:44:21 +01:00
Ng Zhi An
da44a06ad5 Fix typo in trace tag
Bug: None
Test: logcat
Change-Id: I592e075f4de911d39ccea967e1b3c0c7dd27fd02
2018-05-09 22:34:53 -07:00
Makoto Onuki
d2c6d48fba Merge "Log slow message delivery on Looper" into pi-dev am: 14186bfe08
am: d539b18694

Change-Id: I9a5e02f7b18c63e463d6ff3c4c80d74d18ee7a74
2018-04-30 11:13:25 -07:00
Makoto Onuki
712886fd97 Log slow message delivery on Looper
Sample log:
04-27 15:30:17.306  1000   942   942 W Looper  : Dispatch took 222ms on main, h=Handler (com.android.server.job.JobSchedulerService$JobHandler) {42042fc} cb=null msg=7 start=48162 end=48384
04-27 15:30:17.306  1000   942   942 W Looper  : Delivery took 235ms on main, h=Handler (com.android.server.job.JobSchedulerService$JobHandler) {42042fc} cb=null msg=4 start=48149 end=48384
04-27 15:30:17.773  1000   942   942 W Looper  : Dispatch took 445ms on main, h=Handler (android.app.ActivityThread$H) {5df4c77} cb=android.app.-$$Lambda$LoadedApk$ReceiverDispatcher$Args$_BumDX2UKsnxLVrE6UJsJZkotuA@badd538 msg=0 start=48406 end=48851
04-27 15:30:17.828  1000   942   942 W Looper  : Drained
04-27 15:30:24.389  1000   942   942 W Looper  : Dispatch took 718ms on main, h=Handler (android.hardware.soundtrigger.SoundTriggerModule$NativeEventHandlerDelegate$1) {d7e9947} cb=null msg=4 start=54749 end=55467
04-27 15:30:24.389  1000   942   942 W Looper  : Delivery took 621ms on main, h=Handler (com.android.server.media.MediaSessionRecord$MessageHandler) {5851574} cb=null msg=7 start=54846 end=55467
04-27 15:30:24.499  1000   942   942 W Looper  : Drained

Bug: 78590632
Test: Boot and check log
Test: setprop log.looper.1000.android.bg 1 and runtime-restart and check log
Change-Id: Ief1fc65b40b8a3d583879f55a76288e3dba6be7d
2018-04-27 17:15:46 -07:00
Ralph Nathan
090c2c37ca Udpate package name for IoTSystemServer.
Bug: 78302987
Test: imx7d boots
Change-Id: Idd07a54afae95d982a8bfa621e881a9a83f09d1d
2018-04-23 09:17:00 -07:00
Paul Lawrence
54271901cd Fix FDE
Wifi services crash if run during crypto bounce and are
unnecessary. Disable.

Test: Cherry-pick ag/3898232. System boots, can set pattern, system
      reboots. Wifi works at all points.
Bug: 76452634

Change-Id: Id345082f455617386de7fac23fe84e44a8dee6d9
2018-04-13 21:21:45 +00:00
Mehdi Alizadeh
ce2d963d2e Update NetworkScoreService to use SystemService
Bug: 29118511
Test: runtests.sh
Test: Ran integration tests
Test: Verified wifi assistant still works (Uses NetworkScorer).
Change-Id: I50a6bd5ab59fc69fcb331102ad80ec4bb0988c70
2018-04-06 17:08:59 +00:00
Fyodor Kupolov
163a57d71e Merge "Added BinderCallsStatsService" into pi-dev 2018-03-21 23:02:58 +00:00
Alice Sheng
0b08926fcb Merge "Revert "Revert "Add setting for enabling CPU frequency scaling.""" into pi-dev 2018-03-20 21:56:40 +00:00
Alice Sheng
59a9488f50 Revert "Revert "Add setting for enabling CPU frequency scaling.""
This reverts commit 6750352248.

Reason for revert: Added SElinux policy to allow the service to be started. Verified by local testing on the latest pi-wear-dev.

Bug: 74018496
Bug: 75974893
Change-Id: I9bd8939f6292be9c160e19ebdf934023792059ba
2018-03-19 23:46:56 +00:00
Alice Sheng
7723aed494 Merge "Revert "Add setting for enabling CPU frequency scaling."" into pi-dev 2018-03-19 22:38:25 +00:00
Alice Sheng
6750352248 Revert "Add setting for enabling CPU frequency scaling."
This reverts commit 2e8afd8736.

Reason for revert: SELinux Boot crash
Bug: 75974893

Change-Id: I4751530a1b460842130a495efe688aaf19b92638
2018-03-19 22:36:52 +00:00
Alice Sheng
1799f2b878 Merge "Add setting for enabling CPU frequency scaling." into pi-dev 2018-03-19 18:41:40 +00:00
Fyodor Kupolov
ca34851ead Added BinderCallsStatsService
It tracks binder calls into the system server and reports
statistics about CPU time spent per call on multiple dimensions,
e.g. uid or call description.

Usage: dumpsys binder_calls_stats
Overhead: ~0.5% per binder call (if enabled)

Test: manual
Bug: 75318418
Change-Id: I13b854f67f8fd1c9f985b8e45f74dcba2e73b9cb
2018-03-16 23:17:03 +00:00
Yohei Yukawa
b8bbdaf022 Delay DropBox until SettingsProvider becomes ready
It turns out that we are still not ready to publish
DropBoxManagerService at an extremely early boot phase as we attempted
so [1].  Our best right now is to publish DropBoxManagerService
immediatelly after SettingsProvider is installed.

Otherwise, if WTF logs are generated in a too early boot phase, it is
indeed possible that two different instances of SettingsProvider can
be created.

The first SettingsProvider instance, created by the
DropBoxManagerService access to Settings, is still present, and a
reference is held in Settings.ContentProviderHolder, such that
framework API access hits this instance.

The second SettingsProvider instance, created by the SettingsService
startup, also still exists and is referenced by
SettingsService.mProvider -- this instance is hit by "settings" shell
command access via SettingsService.onShellCommand().

This creates a situation where settings modifications made via shell
command cannot be seen by the usual frameworks APIs, and vice-versa.

 [1]: Ie71d53fc125ebc47fa08ef59a8b7e4f66f2e805c
      d79d203b35

Bug: 72399950
Fix: 72450122
Fix: 73505784
Test: atest CtsTextTestCases:android.text.format.cts.DateFormatTest#test_is24HourFormat
Test: atest CtsInputMethodServiceHostTestCases
Test: Manually verified as follows
      1. Boot a certain device that has neither /proc/wakelocks nor /d/wakeup_sources exists
      2. adb shell settings get secure enabled_input_methods
         -> shows non-empty result
Change-Id: I66b68e7f456c4e0e8f5933e65202c61ed862088d
2018-03-14 18:04:52 -07:00
Alice Sheng
2e8afd8736 Add setting for enabling CPU frequency scaling.
Bug: 74018496
Change-Id: I97a6828b6248ae6850e615a4840469420dbaf918
2018-03-13 09:42:08 -07:00
Makoto Onuki
e8edbcf765 Show system uptime in bugreport (dumpsys alarm)
Example:

RuntimeStarted=2018-03-06 19:33:00.587  (Runtime restarted)
Runtime uptime (elapsed): +15s375ms
Runtime uptime (uptime): +15s375ms

Test: dumpsys alarm
Bug: 74126915
Change-Id: I8e82050b8246725d944829b6488b1946a1b37ba1
2018-03-06 13:23:47 -08:00
TreeHugger Robot
3b346fa9b1 Merge "Add resources and hooks required for custom wear global actions." 2018-03-02 21:32:34 +00:00
Vishnu Nair
3764f4e9f8 Dump input service in bugreport critical section
- input service data needs to be in sync with window service data
- section is generated in under 20 ms well within guidelines

Bug: 74098479
Test: Take bug report and verify contents
Test: mmm -j56 frameworks/native/cmds/dumpstate && \
 adb sync data && adb shell /data/nativetest64/dumpstate_smoke_test/dumpstate_smoke_test && \
 printf "\n\n#### ALL TESTS PASSED ####\n"

Change-Id: Ida087fa6b0b2e1509b6d9570ab216bacbb1a1863
2018-03-02 07:56:44 -08:00
Michael Kwan
01ad0aabf2 Add resources and hooks required for custom wear global actions.
Bug: 31802693
Test: manual test
Change-Id: Ie5e2082e2121f6f3a7ca847f40e5cebab52aab0d
2018-03-02 05:53:42 +00:00
Jeff Sharkey
b0613dceb0 Force loading of safe labels in system_server.
It's too easy for code to accidentally use loadLabel() when building
strings for security sensitive contexts, so add ability for a process
to always force loading of safe strings.

Test: builds, boots
Bug: 73657770
Change-Id: I1c7645bd7bebed0cfb6bc3e5bfd36c8cb11d4838
2018-02-28 23:06:04 +00:00
Jeff Sharkey
725024bb2a Merge "Name specific app for rapid data usage." 2018-02-23 16:28:58 +00:00
Jeff Sharkey
e0c2995d0f Name specific app for rapid data usage.
When a single app is responsible for more than half of the data usage
that caused us to trigger a "rapid usage" alert, name that app in the
notification.  Tests to verify.

Move NPMS->NSS direct calls to "Internal" pattern, following
best-practices to avoid unnecessary AIDL exposure.

Remove 3G/4G split mobile plan support, which has been deprecated for
years and was never supported in a shipping product.

Move MultipathPolicyTracker in tree to reflect its package name.

Test: bit FrameworksNetTests:*
Test: bit FrameworksServicesTests:com.android.server.NetworkPolicyManagerServiceTest
Bug: 69263587, 64221505, 73431080, 72746951
Exempt-From-Owner-Approval: approved in previous PS
Change-Id: I3e4ec1ae2222d51b232f76f32faca93d4f8cd272
2018-02-23 16:27:39 +00:00
Yahan Zhou
25d49463d5 Start UsbService in emulator
We need to start usb service in emulator even when we do not have usb
feature. It is used for adb authentication.

BUG: 73644752
Test: manual

Change-Id: I7ac6c5a20777be5ab5f286a02b73211b5e76898d
(cherry picked from commit dfe6a40d8a8d4806d77773961e137edb1fbcbb0e)
2018-02-21 16:01:44 -08:00