17061 Commits

Author SHA1 Message Date
Narayan Kamath
d85ded890d am 645a920f: Merge "Fix OEM native library path bug."
* commit '645a920fd2c478c545c6bb659f2eab36545fe116':
  Fix OEM native library path bug.
2014-05-01 13:56:59 +00:00
Narayan Kamath
eb5734989b am 986b901a: Merge "Fix native-lib dir assignment & updating"
* commit '986b901ae280928e91193527f7c883b296fc62fc':
  Fix native-lib dir assignment & updating
2014-05-01 13:56:56 +00:00
Narayan Kamath
f465db9f1d Don't adjust ABI if PackageSetting#pkg is null.
If means the package hasn't been scanned yet, and we
will adjust the ABI during the scan of the last package
in the shared user group.

NOTE: This needs some more cleaning up, which will be
done along with the remaining TODO in this function.

(cherry picked from commit 6609990e35b11c38f55f6e632160d4f2ff201ea3)

Change-Id: Ibace7849485865054e062d2b979f320bf89ff0f3
2014-05-01 13:56:43 +00:00
Narayan Kamath
57156572a7 Fix dex file pruning logic.
We should now prune all normal files from /data/dalvik-cache
in addition to looking for dex files in all subdirectories of
/data/dalvik-cache.

(cherry picked from commit 51a6f9253399588eedf77d75c578d9aa23d11529)

Change-Id: I536dfdc48e94155e7be64eb4efd9f7f2a1d2d00a
2014-05-01 13:56:22 +00:00
Narayan Kamath
1b46093d33 Adjust instruction sets for shared UID apps.
Since shared UID apps are run in the same process,
we'll need to make sure they're compiled for the same
instruction set.

This change implements the recompilation of apps that
don't have any ABI constraints.

Apps that *do* have ABI constraints are harder to deal
with, since we'll need to rescan them to figure out the
full list of ABIs they support and then re-extract the
native libraries from these apps once we find an ABI we
can use throughout.

(cherry picked from commit 85703d58af1dac692d7d83c03220e45ab2a5aded)

Change-Id: I8311a683468488cc7e30381965487a3d391609ae
2014-05-01 13:55:35 +00:00
Narayan Kamath
0349e8c478 Package manager changes for dual zygote stack.
- Pass down the app's instruction set to dexopt so that
  it can compile the dex file for the right architecture.

- Also pass down the app's instruction set to rmdex, movedex
  and getSize so that they can construct the cache file
  location properly.

- Temporarily compile "system" jars such as am,wm etc. for
  both architectures. A follow up change will ensure that
  they're compiled only for one architecture (the same
  arch. as the system server).

- Java "shared" libraries are now compiled for the right
  architecture when an app requires them.

- Improve the app native library ABI detection to account
  for system apps installed in /system/lib{64}/<packagename>
  and also handle sdcard and forward locked apps correctly.

(cherry-picked from commit b4d35dc8e9702f9d0d82d35a105f0eea35672b52)
2014-05-01 13:54:48 +00:00
Narayan Kamath
99253c2da9 am fde59428: Merge "Handle /oem and /vendor as well"
* commit 'fde594288bff0b8f95567e6b27f273f50f0c5f87':
  Handle /oem and /vendor as well
2014-05-01 13:53:08 +00:00
Narayan Kamath
a7b465efc4 am d91358b2: Merge "Support per-package lib dirs for bundled apps"
* commit 'd91358b2b977ef7c3551a486f51475c0441aba6e':
  Support per-package lib dirs for bundled apps
2014-05-01 13:52:59 +00:00
Jeff Sharkey
66309e2bf7 Fix OEM native library path bug.
Bug: 13340779

(cherry picked from commit 7d3328d14bbbee01a9de1ff5b13b0446c709d835)

Change-Id: I1b4c5d138cafe3651d475ca1e048f495ff6c5f10
2014-05-01 13:52:33 +00:00
Christopher Tate
c38a807b2f Fix native-lib dir assignment & updating
The per-package /system/lib/* feature introduced bugs in the
native library path handling during app upgrade installs.  The
crux of the fix is that when recalulating the desired native
library directory, the basis for the calculation needs to be
the scanned APK's location rather than the extant package
settings entry -- because that entry refers to the pre-upgrade
state of the application, not the new state.

Bug 14233983

(cherry picked from commit 353e39a973dbbadce82fee2f83ad194e04a47449)

Change-Id: I26f17a596ca2cd7f963955c0642548c15138ae26
2014-05-01 13:52:06 +00:00
Christopher Tate
c84471c2e0 Handle /oem and /vendor as well
Bug 13170859

(cherry-picked from commit 740888f62eae158d5775be716620f0d56d87f587)

Change-Id: I7b5e206697fcbec146cac6cd83fca5c583a8cbd7
2014-05-01 13:51:33 +00:00
Narayan Kamath
fc0810e565 Support per-package lib dirs for bundled apps
Bundled apps can now use /system/lib/apkname or /system/lib64/apkname
in addition to the (globally shared) /system/lib and /system/lib64
directories.  Note that when an app is updated post hoc the update APK
will look to its normal library install directory in
/data/data/[packagename]/lib, so such updates must include *all*
needed libraries -- the private /system/lib/apkname dir will not be in
the path following such an update.

"apkname" here is the base name of the physical APK that holds the
package's code.  For example, if a 32-bit package is resident on disk
as /system/priv-app/SettingsProvider.apk then its app-specific lib
directory will be /system/lib/SettingsProvider

Bug 13170859

(cherry picked from commit addfbdc09ccf258395db8bfc510989a4c583f7ab)

Change-Id: Id82da78024a6325458b8b134d7d91ad0e5f0785e
2014-05-01 13:50:47 +00:00
Alexandra Gherghina
3c4d9c56db Merge "Adds an enabled state in UserInfo instead of DevicePolicyManager" 2014-05-01 10:49:21 +00:00
Alexandra Gherghina
df35d570ed Adds an enabled state in UserInfo instead of DevicePolicyManager
Bug: 14377459
Change-Id: Ib4ec43d87da96c3dddaf9b7ae1796f261863a182
2014-05-01 11:34:27 +01:00
Nicolas Prevot
ff2e05e1f6 Merge "Introduce forwarding intents across profiles." 2014-05-01 09:17:13 +00:00
Jeff Davidson
14f1ec05b2 API for network cache subsystems.
A network subsystem (e.g. Wi-Fi) will be responsible for implementing
INetworkScoreCache. NetworkScoreService will load caches for each
configured network subsystem. When it receives a call to update
scores, it will separate the networks by type and call updateScores on
the appropriate INetworkScoreCache.

Each subsystem will also be responsible for requesting scores for new
networks by calling NetworkScoreManager#requestScores.

Bug: 14408144
Bug: 14137255
Change-Id: I76e5e5205bc359c39d6b9c1782126fb7f465cd96
2014-04-30 17:50:46 -07:00
destradaa
cfbdcd2594 Make sure the FlpHardwareProvider is only advertised to GmsCore if the platform supports it.
b/14117917

Change-Id: Id6c2444893bcf192049e3233d1296eac16fcf826
2014-04-30 11:31:21 -07:00
Nicolas Prevot
10fa67c77e Introduce forwarding intents across profiles.
The package manager service maintains, for some user ids, a list of forwarding intent filters.
A forwarding intent filter is an intent filter with a destination (a user id).
If an intent matches the forwarding intent filter, then activities in the destination can also respond to the intent.

When the package manager service is asked for components that resolve an intent:
If the intent matches the forwarding intent filter, and at least one activity in the destination user can respond to the intent:
The package manager service also returns the IntentForwarderActivity.
This activity will forward the intent to the destination.

Change-Id: Id8957de3e4a4fdbc1e0dea073eadb45e04ef985a
2014-04-30 19:24:52 +01:00
Adrian Roos
08d4a0ab48 Merge "Fix broken trust agent reloading v2" 2014-04-30 17:41:25 +00:00
Kenny Guy
7e5264ced7 Merge "Extend LauncherApps service to expose enabled state." 2014-04-30 17:38:10 +00:00
Dianne Hackborn
406c51b360 Merge "Switch IProcessObserver to report process state" 2014-04-30 16:39:15 +00:00
Adrian Roos
a5956424b8 Fix broken trust agent reloading v2
Bug: 13723878
Change-Id: I61f313bfc7ff0dc502551b54d580a7ce8694f04d
2014-04-30 18:23:38 +02:00
Christoph Studer
03b87a2f40 Log notification clicks
Emit notification_clicked log events when a notification
is clicked from SystemUI.

Also refactor the onNotificationClicked method to work with
a key instead of individual notification params.

Change-Id: Iffd15e95d46371b2ae7bfd00b2c348d9f4cf5d14
2014-04-30 18:00:55 +02:00
Adrian Roos
81e046645d Fix broken trust agent reloading
Bug: 13723878
Change-Id: I2f7f3fad5685e5e57dcddf2f2c3494bb95e38b15
2014-04-30 17:48:18 +02:00
Narayan Kamath
ab45d1d6d2 Don't adjust ABI if PackageSetting#pkg is null.
If means the package hasn't been scanned yet, and we
will adjust the ABI during the scan of the last package
in the shared user group.

NOTE: This needs some more cleaning up, which will be
done along with the remaining TODO in this function.

Change-Id: Ie332806b64e22ab4a4856e1ccd064ff6a01616bf
2014-04-30 13:36:37 +01:00
Youngsang Cho
36c492cf1a Merge "Explictly release the surface in TV input framework" 2014-04-30 11:07:29 +00:00
Youngsang Cho
f836206818 Explictly release the surface in TV input framework
Change-Id: Id178e8959f9c25d1d5f1ab85d5e8455577570d11
2014-04-30 20:05:32 +09:00
Narayan Kamath
f6b635e4f0 Fix dex file pruning logic.
We should now prune all normal files from /data/dalvik-cache
in addition to looking for dex files in all subdirectories of
/data/dalvik-cache.

Change-Id: I4abb2b01b359bbb1b8ece2c9025541a5d5e335f5
2014-04-30 10:30:12 +01:00
Narayan Kamath
df6d6dc2aa Adjust instruction sets for shared UID apps.
Since shared UID apps are run in the same process,
we'll need to make sure they're compiled for the same
instruction set.

This change implements the recompilation of apps that
don't have any ABI constraints.

Apps that *do* have ABI constraints are harder to deal
with, since we'll need to rescan them to figure out the
full list of ABIs they support and then re-extract the
native libraries from these apps once we find an ABI we
can use throughout.

Change-Id: I365c6b0b18187df814d4736da61b199dd4494e3c
2014-04-30 09:43:47 +01:00
Narayan Kamath
0f206a149d Package manager changes for dual zygote stack.
- Pass down the app's instruction set to dexopt so that
  it can compile the dex file for the right architecture.

- Also pass down the app's instruction set to rmdex, movedex
  and getSize so that they can construct the cache file
  location properly.

- Temporarily compile "system" jars such as am,wm etc. for
  both architectures. A follow up change will ensure that
  they're compiled only for one architecture (the same
  arch. as the system server).

- Java "shared" libraries are now compiled for the right
  architecture when an app requires them.

- Improve the app native library ABI detection to account
  for system apps installed in /system/lib{64}/<packagename>
  and also handle sdcard and forward locked apps correctly.

Change-Id: I4f380b146137803e51d56fdf355c3bdfc92c409d
2014-04-30 09:43:31 +01:00
Jungshik Jang
e9c77c88ea Implement native send and receive logic for HdmiCecController.
This change includes native jni implementation for
incoming and outgoing message of CEC.
For incoming message, native layer converts it into three
pieces, source address (initiator), destination address (follower)
and data body which includes opcode. In Java layer, it is delegated to
main io thread. For now all messages are rejected by sending <Feature Abort>
to initiator.
For outoging message, all messages are sent to io thread and it delegates
it into native layer. Native logic converts it into cec_message and
pass it to HAL so that HAL performs sending message.
In order to handle <Feature Abort> message, added [Abort reason] which is
defined in hdmi_cec.h.

Change-Id: If9fd74745f476105e5cfae964e39c78bae69d3e2
2014-04-30 14:29:04 +09:00
John Spurlock
aa2112f671 Merge "Zen mode tweaks." 2014-04-30 01:53:09 +00:00
John Spurlock
e86de4c067 Zen mode tweaks.
- Fix regression with alarms.
 - Run all condition provider callbacks on the main thread.
 - Exit zen mode if the current condition is disabled / uninstalled.

Bug:14402762
Change-Id: I0746670c1910047a9dc9b7e29aa1a6c3899fd9fe
2014-04-29 21:48:26 -04:00
Dianne Hackborn
684bf34ee8 Switch IProcessObserver to report process state
When IProcessObserver was created, the only information
we had for the state of a process was its "importance".
Now we have the process state, which is much more useful.
Switch to reporting that.

Change-Id: Icdb3eea8cf96f4eff7ed3d584f940a1bd9cc3884
2014-04-29 17:56:57 -07:00
Michael Wright
9feab5f278 am 8a02b20f: Merge "Add TYPE_MAGNIFICATION_OVERLAY to InputWindowInfo::isTrustedOverlay()"
* commit '8a02b20f6f3fdd5baa5d22321769303ce76ba80a':
  Add TYPE_MAGNIFICATION_OVERLAY to InputWindowInfo::isTrustedOverlay()
2014-04-30 00:03:29 +00:00
Michael Wright
8a02b20f6f Merge "Add TYPE_MAGNIFICATION_OVERLAY to InputWindowInfo::isTrustedOverlay()" 2014-04-29 23:58:17 +00:00
Bill Yi
293513a59d Merge commit '0b62467b142b61ee1e449ba958ba37dfd961ef56' into HEAD 2014-04-29 16:07:29 -07:00
Michael Wright
15c32f2699 Merge "Move key attribute information into KeyEvent." 2014-04-29 22:31:06 +00:00
Dianne Hackborn
3e77bb8331 Merge "Add IBatteryStats API to retrieve current charge times." 2014-04-29 21:54:58 +00:00
Dianne Hackborn
ab5c0ea43c Add IBatteryStats API to retrieve current charge times.
Also include charge/discharge information in dumpsys.

Change-Id: Ica1b333ad334dc698d4a67da391b378757662f41
2014-04-29 14:53:32 -07:00
Jinsuk Kim
c79224e4b7 am 60037302: am 8fe27e88: Merge "Move logical address allocation logic into native service from HAL" into klp-modular-dev
* commit '60037302208be033442cc3f3c50a25c7064ebbd1':
  Move logical address allocation logic into native service from HAL
2014-04-29 21:38:19 +00:00
Jinsuk Kim
6003730220 am 8fe27e88: Merge "Move logical address allocation logic into native service from HAL" into klp-modular-dev
* commit '8fe27e881851921a90882f7d4da142bf936c5549':
  Move logical address allocation logic into native service from HAL
2014-04-29 21:35:01 +00:00
Jinsuk Kim
8fe27e8818 Merge "Move logical address allocation logic into native service from HAL" into klp-modular-dev 2014-04-29 21:32:50 +00:00
Kenny Guy
53fa4ec7f4 Extend LauncherApps service to expose enabled state.
Provide methods for checking if a package or activity
is enabled for a given profile.

Change-Id: If9cb15dc9398a709e60e7b689b664c24c49fcc16
2014-04-29 19:28:31 +01: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
Kenny Root
a8e65fd82a Only remember the signer certificates for Signatures
Previously we would use the JarEntry#getCertificates API which would
return a flattened array of all the signers and their certificate chain.
Since this isn't what was intended, switch to reading the certificate
chains and only paying attention to the signer certificate.

In order to migrate during upgrades of the platform, we'll scan on boot
with a compatibility mode which will check the stores signatures in the
old format by flattening the chains of the scanned packages then
comparing the two sets.

Bug: 13678484
Change-Id: I02a5c53121d8d6f70a51d7e3b98168a41e11482e
2014-04-29 11:08:50 -07:00
Nicolas Prevot
627aad9c20 Merge "Small fix in DeviceOwner.java." 2014-04-29 10:35:26 +00:00
Nicolas Prevot
f2a5bf88cd Small fix in DeviceOwner.java.
Change-Id: Ibfa4ae7b1bc269bc51532026f8a6cc3c75cc42bf
2014-04-29 10:43:53 +01:00
Jae Seo
19db0f036a Merge "Dispatch input events to the TV input" 2014-04-29 06:22:00 +00:00
Jae Seo
6a6059a29e Dispatch input events to the TV input
TvInputManagerService now creates an InputChannel pair and passes one
end to the app and the other end to the service. Then the TvInputManager
in the app creates an InputEventSender around one end of the channel to
send events and the service creates an InputEventReceiver around the
other end of the channel to receive events.
Most of the newly added code here was borrowed heavily from the IME.

Change-Id: I0bd83847cba0033ccb6f4b6dad267ebeaf5e9c7c
2014-04-29 14:18:55 +09:00