348 Commits

Author SHA1 Message Date
Andres Morales
68d4acd205 Service for reading and writing blocks to PST partition
Permits apps with permission
android.permission.ACCESS_PERSISTENT_PARTITION to obtain
a read and write data blocks to the PST partition.

Only one block ever exists at one time in PST. When
a client writes another block, the previous one is
overwritten.

This permits storing a block of data that will live
across factory resets.

Change-Id: I8f23df3531f3c0512118eb4b7530eff8a8e81c83
2014-07-09 16:27:17 -07:00
Joe LaPenna
4bb015d90a CW on Master: Disable CaptivePortalTracker, EthernetService
BUG: 15143878

Change-Id: I6c534a28c1fcd475982ae70e7f3af69f3a219e24
2014-07-08 22:52:02 +00:00
Dianne Hackborn
be7c50e0a1 Add network access blocking when in battery save mode.
The network policy manager now monitors battery save mode and,
when in battery save, uses its facility to block access to metered
networks to block access to all networks.  That is, it tells the
network management service that all networks have an (infinite)
quota, and puts various app uids to be restricted under quota
interfaces as appropriate.

This new network blocking needs a new facility to be able to white
list apps, such as GmsCore.  To do this, I refactored the package
manager's permission configuration stuff into a separate SystemConfig
class that can be used by others, and it now has a new tag to
specify package names that should be white-listed for power save
mode.  These are retrieved by the network policy manager and used
to build a whitelist of uids.

The new general config files can now go in system/etc/config,
though currently everything still remains in the permissions dir.

Still left to be done is changing the semantics of what uids are
allowed in this mode, to include all perceptable uids.  (So that we
can still do things like background music playback.)  This will be
done in a follow-on CL.

Change-Id: I9bb7029f61dae62e6236da5ca60765439f8d76d2
2014-07-01 09:22:57 -07:00
Jim Miller
05d38d28b6 Merge "Hide IFingerprintService and IFingerprintServiceReceiver" 2014-06-17 20:55:27 +00:00
Jim Miller
06e658f324 Hide IFingerprintService and IFingerprintServiceReceiver
The @hide was being ignored because they were being used by the
constructor.  Fixed by making the FingerprintManager constructor
hidden.

Change-Id: I3cd409df5055579f5004b08d00d5d951b8e5afd3
2014-06-17 18:38:14 -07:00
Jeff Brown
2139276ce8 Refactor BatteryService to new pattern.
Apply SystemService pattern to BatteryService.

Change-Id: I4971b2da8d2aed4d14440fb65863a8b916bab03c
2014-06-17 18:20:42 -07:00
Jeff Brown
2c43c339de Resolve boot time dependencies related to the power manager.
This change fixes a bug where native daemons may try to communicate
with the power manager before it was fully initialized due to a race
between publishing the binder service and completing init().

The solution was to simplify the dependencies related to the power
manager.  It turns out that most services that were passed in
init are not actually needed until systemReady.  What remained
was a dependency on the activity manager to check permissions for
incoming calls.  So now we start activity manager first.
However, the activity manager also depends on power manager for
wakelocks.  To break the cycle, we now defer initializing the activity
manager's wakelocks until after the power manager has been started.

Cleaned up a bunch of boot-time service dependencies so that we
can have better confidence that they are correctly maintained.

Bug: 13884219
Change-Id: If08e2d7ccd44e7026a72441bb6bd5afd7bb9fffe
2014-06-17 18:20:42 -07:00
Jim Miller
a7596147b4 First pass at FingerprintService integration with HAL.
Move FingerprintService to framework services directory
Fix merge conflicts.

Tested: scanning, enrolling, removing.

Change-Id: I58b2b902cb671dc82cdaa54a195ba5f1a154622c
2014-06-17 14:03:37 -07:00
Christopher Tate
5b2034e2cc Merge "Switch everything to scheduled jobs" 2014-06-17 20:55:27 +00:00
Christopher Tate
cf1a2f73fc Switch everything to scheduled jobs
Everything that used the IdleMaintenance APIs/broadcasts gets to use the
spiffy new JobScheduler instead.  Hooray!

On top of that, the now-obsolete "idle maintenance" APIs are now gone
entirely.  Double hooray!

Bug 14993295

Change-Id: I5fb67c296ca8cd0ba8a2c8760a0f0d9d962d813b
2014-06-17 12:14:45 -07:00
Lorenzo Colitti
a23f56b95c am 34852095: Merge "Don\'t enable Ethernet on the emulator." into lmp-preview-dev
* commit '34852095d9148945edc39c2df9513c41998eb55b':
  Don't enable Ethernet on the emulator.
2014-06-11 17:43:15 +00:00
Christopher Tate
0188bee2c5 am d8f71d34: Merge "Out with the old; in with the new" into lmp-preview-dev
* commit 'd8f71d34c3c7fb161a1586de8edb52161c32d672':
  Out with the old; in with the new
2014-06-11 17:02:18 +00:00
Lorenzo Colitti
5592a725dd Merge "Don't enable Ethernet on the emulator." into lmp-preview-dev 2014-06-10 22:31:57 +00:00
Christopher Tate
7060b04f6d Out with the old; in with the new
Switch to the official "JobScheduler" etc naming.

Bug 14997851

Change-Id: I73a61aaa9af0740c114d08188bd97c52f3ac86b7
2014-06-10 12:51:55 -07:00
Lorenzo Colitti
beacf8d64c Don't enable Ethernet on the emulator.
Don't start the Ethernet service on the emulator because it
interferes with qemu's SLIRP emulation, which uses IPv4 over
eth0.

Bug: 15341003
Change-Id: I4041a17b19a4861cae4fbf47ab5e05b007385e19
2014-06-10 14:53:22 +09:00
Ed Heyl
5adb67d4ce merge 4ce22057, regen api/current.txt
Change-Id: I39186b5c4d41753c729c5d1ee7ee96b03a45c514
2014-06-09 10:41:21 -07:00
Jinsuk Kim
3f48068d78 Remove HdmiCecService
The service is replaced with HdmiControlService. Removing all the related
classes and the initialization of the service.

Change-Id: Ic7baaddffb9873613ddd1096e874f226da983939
2014-06-09 07:55:47 +09:00
Jae Seo
4c9e57f156 resolved conflicts for merge of ebe661c4 to master
Change-Id: Ic25dc762ee43654b439de3ec237ead007bee3df4
2014-06-03 17:06:58 +00:00
Yuhao Zheng
daa618e3cd WifiService and WifiPasspointService hook up
- add a reference to passpoint service in wifi state machine
- break dependency loop at boot phase

Change-Id: I34c0ce55efa5235ebaba1fa6772f559d608ee5ba
2014-06-02 16:48:37 -07:00
Jae Seo
d5cc4a281e Put TV Input Framework under android.media.tv, including TvContract
Bug: 15345342
Change-Id: I665ca23f0f074ce29cb2e047109b209178532107
2014-06-02 11:02:52 -07:00
Amith Yamasani
df7db074b5 Derive LauncherAppsService from SystemService
And encapsulate the aidl interface implementation.

Change-Id: Id9a2544b411648e2596de18682079a64e95b0710
2014-06-01 10:41:13 -07:00
Amith Yamasani
f20d640fa2 Restrictions Manager
Mechanism to register a provider for requesting an
administrator to respond to permission requests.

Request format and response format constants.

Description of manifest template for static restrictions.
Int type introduced in RestrictionEntry.

Needs more javadoc and better description of manifest templates,
including specifying the XML attributes.

Change-Id: I5a654d364e98379fc60f73db2e06bf9a8310263d
2014-05-31 16:41:35 -07:00
Jeff Brown
094b2136f0 resolved conflicts for merge of 92ab0b91 to master
Change-Id: I66d6849700759163669faa930f07a7e968df5155
2014-05-29 18:25:11 -07:00
Jeff Brown
92ab0b91cd am aeb4e071: Merge "Add dumpsys to dock observer." into klp-modular-dev
* commit 'aeb4e071abb100d10c39d154b05c2911d399395d':
  Add dumpsys to dock observer.
2014-05-30 01:01:17 +00:00
Jeff Brown
010e561a70 Add dumpsys to dock observer.
Minor refactoring of dock observer to allow its state to be
inspected and modified via dumpsys for debugging purposes.

eg. View current state.
adb shell dumpsys DockObserver

eg. Simulate being docked.
adb shell dumpsys DockObserver set state 1

eg. Reset back to normal.
adb shell dumpsys DockObserver reset

Change-Id: Ie48db775290ebed9aa4d9d9d5ac5a6fcb6122ac9
2014-05-29 17:48:33 -07:00
Brian Carlstrom
77b170cedc resolved conflicts for merge of 452c5921 to klp-modular-dev-plus-aosp
Change-Id: I6044604b431eed0319579a1a3b9213c9a0aaf678
2014-05-28 16:10:53 -07:00
Brian Carlstrom
5bc93866b0 Move to dalvik.vm.lib.2 to force default to libart
Bug: 14298175

(cherry-picked from commit 2ef5abb8d534f016582d6023054cbe69d8114b6b)

Change-Id: Icd91982c09076e87092906106cbff4a81589e8de
2014-05-28 14:53:40 -07:00
Brian Carlstrom
3c1ff826e0 Move to dalvik.vm.lib.2 to force default to libart
Bug: 14298175
Change-Id: I8afa91bddfb6fec6b61c39286a16594eb947830e
2014-05-28 14:31:47 -07:00
Christopher Tate
fa380e982e DO NOT MERGE - Run the task manager service at startup
Also moves most of it into android.app.task rather than android.content.

(Cherrypick from master)

Change-Id: Ic07a664bf54bc3e40aa0b892946edba4bf37262a
2014-05-23 16:41:09 -07:00
Lorenzo Colitti
f9ff2c9ae5 Make the EthernetManager available.
Change-Id: I7a60e977d7a40a5d0367168f2f6633ccae591ac4
2014-05-21 16:41:24 -07:00
Yuhao Zheng
8a476edccd Fix a boot failure due to Wifi / Wifi Passpoint
Bug: 15060373
Change-Id: Ie72fd2e4b855c46a8f9ed12deb8b07fd0c29f522
2014-05-20 14:06:49 -07:00
Vinit Deshpande
e715e8cc00 Fix a runtime break caused by merge conflict
Kwd changed the name of WifiHotspotService to PasspointService; and
the reference to the name was moved in master. Merge ended up picking
up incorrect name WifiPasspointService. This change fixes that.

Bug: 15106138
Change-Id: Ib6d8aee53db39314a9d98abcbd8e0863210de1bb
2014-05-20 11:50:17 -07:00
Yuhao Zheng
a486447231 Hotspot 2.0 framework APIs -- initial implementation
Cherry-picked from klp-wireless-dev-mirror
SHA1: e73969fac45aaca72528226dc8c0c5e54fb2cdd4

Bug: 5485670
Change-Id: If3250a2fae181a3774d3158e341220006ad6ebe5
2014-05-18 09:41:35 -07:00
Eric Laurent
82af2b9e51 Merge "AudioService/WireAccessoryManager: change boot completion detection method" 2014-05-08 23:25:49 +00:00
Vinit Deshapnde
011e1b35a6 Initial implementation of WifiScanner
This change implements basic functionality of WifiScanner. Following
functionality is enabled

1. Scanning - specify a list of channels to scan
2. Significant change detection
3. AP hotlist

Change-Id: Ieef75b96bdbbd3c7d9b9e698bd16e64d3b465254
2014-05-07 21:14:24 -07:00
vandwalle
7c3606c103 initial Best Network Selection implementation
-add dhcpserver, defaultGwMAC address, linked configuration and user choices link lists to WiFiconfiguration
-add default gateway mac address to RouteInfo
-add a Date to the ScanResult
-add BSSID date to the WifiConfiguration
- make framework auto-join into a config option
- add Settings option for showing RSSI in Wifi picker view; add auto-join specific status to WifiConfiguration

Change-Id: I5cfc4f2a48c9f3bc9766e8e68e24eff7b57f2821

 Changes to be committed:
	modified:   core/java/android/provider/Settings.java
	modified:   wifi/java/android/net/wifi/ScanResult.java
	modified:   wifi/java/android/net/wifi/WifiConfiguration.java
2014-05-07 18:48:48 -07:00
Brian Carlstrom
dfad99ad9f resolved conflicts for merge of 0b5598c9 to master
Change-Id: Ie911d6b0b5e2b87e2b4669fa2465a82bb5807893
2014-05-07 15:24:01 -07:00
Brian Carlstrom
0b5598c924 am 691079dd: am a21ba5be: Merge "Add BackgroundDexOptService"
* commit '691079ddc0055fac9b82dccaf35b4591978b2a55':
  Add BackgroundDexOptService
2014-05-07 20:28:25 +00:00
Brian Carlstrom
7395a8ab8a Add BackgroundDexOptService
Change-Id: I0439a04f693ba92df906cbda34f8e53b32f63329
2014-05-06 15:14:29 -07:00
Eric Laurent
4a5eeb9c72 AudioService/WireAccessoryManager: change boot completion detection method
BOOT_COMPLETED intent is not a reliable way for system services
to detect boot completion. The intent broadcast can be significantly
delayed and there is no guaranty that system services
receive it before apps.

Use a systemReady() method called by SystemServer instead.

Bug: 14323903.
Change-Id: I781596a3545e7a1e719799982347cbcd9a4c9009
2014-05-06 10:49:04 -07:00
RoboErik
67e2196d07 Merge "Add dump to MediaSessionService" 2014-05-01 17:11:34 +00:00
RoboErik
a278ea7cec Add dump to MediaSessionService
Adds a dump implementation for debugging MediaSessionService. Also
fixes some synchronize calls that weren't using the same lock object.

Change-Id: I14343f853398749c8ce7ebf91f72729abc9132d9
2014-04-29 11:08:57 -07:00
Adam Lesinski
e929bee9bb Merge commit '734a78fb' into manualmerge
Conflicts:
	core/java/android/app/WallpaperManager.java

Change-Id: Id103f540329ea484ff2e0829a0fc8158621f3dd3
2014-04-28 14:15:06 -07:00
Adam Lesinski
734a78fb86 am 8ea2d451: Merge "Various CTS fixes" into klp-modular-dev
* commit '8ea2d4512248ec612356f558ac35534c3e4c6db6':
  Various CTS fixes
2014-04-28 20:33:09 +00:00
Jeff Sharkey
5568772e81 Derive fingerprint at runtime when undefined.
Some devices leave "ro.build.fingerprint" undefined at build time,
since they need to build it from the components at runtime.

Bug: 13340779
Change-Id: I4d74398817af22079a11c196dc6742b85d2bfb61
2014-04-28 08:54:16 -07:00
Adam Lesinski
2c8d67c9b0 Various CTS fixes
WallpaperManager should always do a null check on the service object.
SystemServer should always bring up the DevicePolicyManagerService,
and let the service do appropriate default no-ops if the feature
is not supported.

Change-Id: Iaaf12b60ed375fe2e341ec11faa10c9344d7d9da
2014-04-25 11:07:39 -07:00
Dianne Hackborn
522ff52f88 Merge "Initial implementation of new voice interaction API." 2014-04-25 17:02:19 +00:00
Dianne Hackborn
91097de49b Initial implementation of new voice interaction API.
This gives a basic working implementation of a persist
running service that can start a voice interaction when
it wants, with the target activity(s) able to go through
the protocol to interact with it.  It may even work when
the screen is off by putting the activity manager in the
correct state to act like the screen is on.

Includes a sample app that is a voice interation service
and also has an activity it can launch.

Now that I have this initial implementation, I think I
want to rework some aspects of the API.

Change-Id: I7646d0af8fb4ac768c63a18fe3de43f8091f60e9
2014-04-24 17:48:58 -07:00
Jungshik Jang
0792d37385 Implement skeleton of new HDMI Control Service.
HdmiCecService is a system service handling HDMI-CEC features
and command. Recently we found out that industry has more
requirements to support HDMI-CEC. Also, MHL is another
standard should be in our pocket. Basically, MHL is
a standard to support communication between mobile device
and TV or Av device. As CEC is a control standard over HDMI
cable, MHL has control channel for peer device.
There behavior is very similiar. Both have commands that
can change Tv's current input and can send/receive key
to other device to control other deivce or TV.

In order to cover both CEC and MHL, current HdmiCecService
implementation has limitation. We had several
session of discussion and decided to refactor
HdmiCecService into HdmiControlService.
For each standard it will have separate controller instance
like HdmiCecController and HdmiMhlController.

In this change I didn't touch original HdmiCecService
because some component, like cast receiver, uses HdmiCecService.
For a while we will keep HdmiCecService until HdmiControlService
accomodates all features of HdmiCecService.

Change-Id: I5485280ab803dbf071d898bfbe34be0b11ce7958
2014-04-25 08:37:51 +09:00
Jeff Davidson
6a4b220f12 Initial implementation of NetworkScoreManager's backing service.
This service will ultimately be responsible for propagating scores
down to lower-level network subsystems. For now, it just keeps scores
in memory and exposes these for debugging purposes via "adb shell
dumpsys network_score".

This change also adds provisioning of a default scorer. When
NetworkScoreService is first initialized, it checks to see if it has
ever set a default scorer; if not, it reads a package name from a
build config property and attempts to set it as the default.

Also add autogenerated equals/hashCode methods to all parcelables.

Bug: 14111427
Bug: 13786258
Change-Id: I02271171653d42e12acd240b73b9e23950744f6b
2014-04-21 16:04:05 -07:00