Commit Graph

2401 Commits

Author SHA1 Message Date
Matthew Williams
674bc2fca5 Merge "TaskManager API first pass." 2014-05-01 17:45:34 +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
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
Kenny Guy
7e5264ced7 Merge "Extend LauncherApps service to expose enabled state." 2014-04-30 17:38:10 +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
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
Amith Yamasani
0150b48c4c Merge "Handle density request in LauncherActivityInfo" 2014-04-25 23:04:27 +00:00
Amith Yamasani
30acde7e90 Handle density request in LauncherActivityInfo
Change-Id: I4e8dc8ef1454b3881bdb80ae118e2d0d306642f3
2014-04-25 15:56:26 -07:00
Kenny Guy
86a6430e52 Provide access to ActivityInfo.name from LauncherActivityInfo
Change-Id: Ia34900f3e232b59f3879dbb3cb3131498023b8ac
2014-04-25 21:21:55 +01: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
Dianne Hackborn
ffcda10861 Add support for muliple active development codenames.
The resource API level is also bumped by the number of
active codenames there are.

Change-Id: Ic1bac452d5c13dc3f48040ffa47f54b28abe2ccc
2014-04-24 16:18:43 -07:00
Craig Mautner
d2cc56ebb3 resolved conflicts for merge of f8a58208 to master
Conflicts:
	core/java/android/content/pm/PackageParser.java
	core/res/res/values/attrs_manifest.xml
	core/res/res/values/public.xml

Change-Id: I747772e9dbc7ee1cf8993e574de4b3215f6833b2
2014-04-24 10:27:37 -07:00
Craig Mautner
f8a5820817 am 03981a4c: Merge "Add activity attribute allowEmbedded" into klp-modular-dev
* commit '03981a4c2e9689197e4d2c916c07ae16207b5276':
  Add activity attribute allowEmbedded
2014-04-24 16:33:02 +00:00
Craig Mautner
ffd14a13ce Add activity attribute allowEmbedded
Activitys without allowEmbedded=true may not be launched in an ActivityView.

Fixes bug 13693121.

Change-Id: I431d554300fc3504ab1bc7d73a58d5dad24f8639
2014-04-24 08:41:29 -07:00
Jeff Sharkey
21de56a946 Add directory selection to DocumentsProvider.
Introduce new ACTION_PICK_DIRECTORY that allows users to grant access
to an entire document subtree.  Instead of requiring grants for each
individual document, this leverages new prefix URI permission grants
by defining new "via"-style URIs:

content://com.example/via/12/document/24/

This references document 24 by using a prefix grant given for
document 12.  Internally, we use isChildDocument() to enforce that
24 is actually a descendant (child, grandchild, etc) of 12.  Since
this is an optional API, providers indicate support with
Root.FLAG_SUPPORTS_DIR_SELECTION.

Extend DocumentsUI to support picking directories.  Expose
createDocument() API to work with returned directories.

Offer to canonicalize via-style URIs into direct URIs, generating
exact permission grants along the way.  Override openAssetFile()
to pass through CancellationSignal.  Move testing code into ApiDemos.

Bug: 10607375
Change-Id: Ifffc1cff878870f8152eb6ca0199c5d014b9cb07
2014-04-22 22:18:21 -07:00
Jeff Sharkey
846318a325 Allow prefix-based Uri permission grants.
Define new FLAG_GRANT_PREFIX_URI_PERMISSION which indicates that a
Uri permission grant should also apply to any other Uris that have
matching scheme, authority, and path segments.  For example, a prefix
grant for /foo/ would allow /foo/bar/ but not /foo2/.

Allow persistable and prefix grants to be issued directly through
grantUriPermission().  Relaxing persistable is fine, since it still
requires the receiver to actively take the permission.

Since exact- and prefix-match grants for the same Uri can coexist,
we track them separately using a new UriGrant key.  (Consider the
case where an app separately extends READ|PREFIX and WRITE for
the same Uri: we can't let that become READ|WRITE|PREFIX.)

Fix revoke to always take away persisted permissions.  Move prefix
matching logic to Uri and add tests.  Add new flags to "am" tool, and
various internal uses around Intent and Context.  Switch some lagging
users to ArraySet.

Bug: 10607375
Change-Id: Ia8ce2b88421ff9f2fe5a979a27a026fc445d46f1
2014-04-22 21:06:49 -07:00
Matthew Williams
6e31c5c82b TaskManager API first pass.
This is a very barebones first pass, meant to ensure we're all on the
same page, and also get feedback.

Change-Id: I7d5492dc5aafbe583f7c2d97ebf1444b6d2e068a
2014-04-21 19:57:49 -07:00
RoboErik
0a57a1112f Merge "Add RouteProviders to the new Media APIs" 2014-04-17 22:13:30 +00:00
RoboErik
07c7077c54 Add RouteProviders to the new Media APIs
Compiles and works with OneMedia. This currently is a rough test of
the system for finding, connecting to, and sending messages to routes.
This will just connect to the first route it finds when a request to
open the route picker is made (and disconnect when another request is
made).

Change-Id: I5de5521a079471b9e02664be4654c0591dfd9a6d
2014-04-17 15:02:33 -07:00
Robin Lee
66e5d96cf9 Allow ProfileOwner apps to manage app restrictions
Simple wrapper around the UserManager.{get|set}ApplicationRestrictions
APIs. Also added a new Intent to signal to running apps that the set
of restrictions has changed since startup.

Change-Id: Ifd108108a73f87325b499d9de2e1b2aacc59b264
2014-04-17 15:58:03 +01:00
Deepanshu Gupta
cf72f25981 Fix incorrect merge conflict to klp-modular-dev-plus-aosp
resolved conflicts for merge of ec6676dd to klp-modular-dev-plus-aosp
properly, originally fixed in 35d46778f4

Change-Id: I5d1abf641564ea19d283f60385d39f7670a2f22e
2014-04-16 14:46:24 -07:00
Deepanshu Gupta
35d46778f4 resolved conflicts for merge of ec6676dd to klp-modular-dev-plus-aosp
Change-Id: I2fec735ba65f56da7d17022074f8924a259b4bbf
2014-04-16 12:14:34 -07:00
Jeff Davidson
b51e0a6c4b Stub APIs for network scoring.
NetworkScoreManager defines all interactions between the framework and
the scorer app. An ACTION_SCORE_NETWORKS broadcast is sent to the
default scorer with any unscored networks, which responds by calling
updateScores() with scores for those networks. An app may also check
whether they are currently the default scorer with
getDefaultScorerPackage() and request to become the default via the
ACTION_CHANGE_DEFAULT broadcast.

Bug: 13786258
Change-Id: Id3dc0f7c1109f0e3afd73356e2475b7f34167419
2014-04-16 11:55:14 -07:00
Deepanshu Gupta
ec6676ddf6 am 86384880: am f1e71876: Fix theme/style resolution in Layoutlib [DO NOT MERGE]
* commit '863848808d005fe1d2fd84a2982adfc02a3fbb9f':
  Fix theme/style resolution in Layoutlib [DO NOT MERGE]
2014-04-16 18:40:55 +00:00
Deepanshu Gupta
863848808d am f1e71876: Fix theme/style resolution in Layoutlib [DO NOT MERGE]
* commit 'f1e7187645f0b0388f7b97d742395efd228b347a':
  Fix theme/style resolution in Layoutlib [DO NOT MERGE]
2014-04-16 18:37:10 +00:00
Deepanshu Gupta
f1e7187645 Fix theme/style resolution in Layoutlib [DO NOT MERGE]
Change-Id: Icfb91e566666408802dadc0e2070991151b16b9d
(cherry picked from commit bfec73c2db)

Conflicts:
	core/java/android/content/res/Resources.java
	tools/layoutlib/create/src/com/android/tools/layoutlib/create/CreateInfo.java
2014-04-15 20:03:19 -07:00
Christopher Tate
9187e40b16 Merge "Don't crash if a null key is passed for verification/parsing" 2014-04-15 23:59:46 +00:00
Todd Poynor
99f7e125b0 Context: fixup wrong Javadoc link for BatteryManager
Change-Id: I3dec0a359185fd9bfc78d98f8232ff64e6a784dd
2014-04-15 16:05:49 -07:00
Todd Poynor
e35872da97 BatteryManager: Add API and service for battery property retrieval
Add service "batterymanager" and method getProperty to retrieve
battery properties.  This is a public API.

Make BatteryProperty public.  Cleanups for public-facing API.

Change-Id: I3637d131aabe4811dff40661728d5353eaf854c4
2014-04-15 13:54:08 -07:00
Christopher Tate
3014733c8c Don't crash if a null key is passed for verification/parsing
Change-Id: I77c496d9d86d2831a4166a924afe1493aa0ac0ce
2014-04-15 12:57:47 -07:00
Jose Lima
68b9d97593 am 9e99cab7: am 970417c7: Added getLeanbackLaunchIntentForPackage()
* commit '9e99cab7d9a0ec2315140c21bb1958eb7ff76a09':
  Added getLeanbackLaunchIntentForPackage()
2014-04-11 19:01:21 +00:00
Jose Lima
9e99cab7d9 am 970417c7: Added getLeanbackLaunchIntentForPackage()
* commit '970417c7d3e33ccbd6918e28d9bc5da24651f5b3':
  Added getLeanbackLaunchIntentForPackage()
2014-04-11 18:58:43 +00:00
Jose Lima
970417c7d3 Added getLeanbackLaunchIntentForPackage()
Change-Id: I23be3bfa59be812a915adc37e08fdf59be8ad90f
2014-04-11 10:54:39 -07:00
Jeff Brown
4e5c089ef3 resolved conflicts for merge of 337e764d to master
Change-Id: I8168dbf42b68c2f7b5ccb300e0080dddc627af26
2014-04-11 01:33:20 -07:00
Jeff Brown
337e764deb am f24687e2: Merge "Plumb display power state through display manager." into klp-modular-dev
* commit 'f24687e2731811fd0e3803b691fd47a659f89329':
  Plumb display power state through display manager.
2014-04-11 03:49:37 +00:00
Jeff Brown
037c33eae7 Plumb display power state through display manager.
Declare a new method, Display.getState() to retrieve the actual
power state of a display.

Improved documentation for Intent.ACTION_SCREEN_ON and
Intent.ACTION_SCREEN_OFF to clarify what they really mean in
terms of the interactive state of the device.

Deprecated PowerManager.isScreenOn() and replaced it with
PowerManager.isInteractive() with a more suggestive name and
better documentation.

Redirect display power state changes to go through the display
manager first and only then head over to the power manager for
legacy compatibility.

Eliminated the bright here and woke here policy flags since they
were unused.  Simplified the input dispatch policy somewhat.

Ensure that screen wake locks are respected up until the point
when dozing really begins.

Fixed a regression in DreamService where onDreamingStarted
might be called before onWindowAttached.

Bug: 13133142
Bug: 13472578
Bug: 13929355
Bug: 13760290
Change-Id: Iabef96921dd554ce3768fb18619cefc3230b5fb0
2014-04-10 20:46:14 -07:00
Narayan Kamath
f148f36d14 am 9e289d70: am 1d26a3f1: am 09e13cc5: Merge "System services detect and register app CPU ABIs"
* commit '9e289d70a8baaed0030413b5991653792e2a816d':
  System services detect and register app CPU ABIs
2014-04-10 09:45:18 +00:00
Narayan Kamath
d11f223c53 resolved conflicts for merge of 286a247e to master
Change-Id: I63df9d482da3ce2ac851959223b9180020ffad0c
2014-04-10 10:38:31 +01:00
Narayan Kamath
9e289d70a8 am 1d26a3f1: am 09e13cc5: Merge "System services detect and register app CPU ABIs"
* commit '1d26a3f1efd0d965e8751e8515608c31789bdbe2':
  System services detect and register app CPU ABIs
2014-04-10 09:26:59 +00:00
Narayan Kamath
286a247e4c am 0fd40cb1: am 80413c9f: Merge "Re-implement native library search and copies."
* commit '0fd40cb100bccbd5d9ad6109ca39c818a857f889':
  Re-implement native library search and copies.
2014-04-10 09:26:44 +00:00
Ramin Zaghi
ff0c470833 System services detect and register app CPU ABIs
This patch uses the NativeLibraryHelper class to
match native libraries in an .apk package with
those listed in 'ro.cpu.abilist' property.
The result is stored in packages.xml and the
ApplicationInfo class.

This information will be used by the ActivityManager
to decide which zygote to use to launch the given
app.

Change-Id: I3ec3d050996d8f4621f286ca331b9ad47ea26fa0
2014-04-09 17:20:13 +01:00
Ramin Zaghi
1378aba7ae Re-implement native library search and copies.
We now use a two step approach :

- First we look through the list of shared libraries in an
  APK, and choose an ABI based on the (priority)  list of ABIs
  a given device supports.
- Then we look through the list of shared libraries and copy
  all shared libraries that match the ABI we've selected.

This fixes a long-standing bug where we would sometimes copy
a mixture of different ABIs to the device, and also allows us
to clearly pick an ABI to run an app with.

The code in NativeLibraryHelper has been refactored so that all
file name validation & matching logic is done in a single place
(NativeLibrariesIterator). This allows us to avoid a lot of
redundant logic and straightens out a few corner cases (for eg.
where the abi determination & copying logic do not agree on
what files to skip).

bug: https://code.google.com/p/android/issues/detail?id=65053
bug: 13647418

Change-Id: I34d08353f24115b0f6b800a7eda3ac427fa25fef
Co-Authored-By: Zhenghua Wang <zhenghua.wang0923@gmail.com>
Co-Authored-By: Ramin Zaghi <ramin.zaghi@arm.com>
Co-Authored-By: Narayan Kamath <narayan@google.com>
2014-04-09 17:16:40 +01:00
Amith Yamasani
5abdbb6560 Avoid security exception when requesting badging
When requesting badged icons, use APIs that don't require the caller
to have MANAGE_USERS permission.

Change-Id: I218cdf5194f38f4affa1874a6fcb43a040ed5295
2014-04-08 17:23:46 -07:00
Amith Yamasani
5784b39843 Merge "Launcher APIs and broadcasts for managed profiles" 2014-04-08 22:04:20 +00:00
Jae Seo
3957091ba8 Initial round of Television Input Framework
This provides APIs to control and create individual television inputs on
the system which will later be hosted by television applications.

Change-Id: I6866d28e78175a1bff2c32a85c5d77e94d0cd60c
2014-04-08 13:35:21 -07:00
Amith Yamasani
4f58263d02 Launcher APIs and broadcasts for managed profiles
UserManager
- Corp badging
- Querying list of managed profiles

Launcher API
- LauncherApps and Service to proxy changes in managed profile
  to the launcher in the primary profile
- Querying and launching launchable apps across profiles

Change-Id: Id8f7b4201afdfb5f414d04156d7b81300119289e
2014-04-08 10:51:05 -07:00
Deepanshu Gupta
e9abc279fd Merge "Fix theme/style resolution in Layoutlib" 2014-04-07 22:27:01 +00:00
Alexandra Gherghina
45849beb3b Merge "Introduces intents for adding and removing a managed profile." 2014-04-07 12:26:56 +00:00