Commit Graph

3201 Commits

Author SHA1 Message Date
Jeff Sharkey
bd3af28fdc Merge "Candidate volumes for packages, fix symlink." 2015-04-16 05:50:16 +00:00
Jeff Sharkey
e2d45be4da Candidate volumes for packages, fix symlink.
Add API to determine the possible candidate volumes that a package
can be moved to.  For example, it currently knows that we need to
move ASEC-based apps through internal storage before migrating them
to a private volume.

Comparator for consistent VolumeInfo ordering when displayed in UI.

Fix native library symlink to be volume UUID aware.

Bug: 19993667
Change-Id: I68d5fac5f0f776ac1c7dd15e7a984bfe2704f3f7
2015-04-15 22:21:49 -07:00
Craig Mautner
15df08abd8 Introduce android:lockTaskMode
The ability for tasks to be started in locktask mode or pinned is
dependent on the value of android:lockTaskMode for the root activity
of the task.

For bug 19995702

Change-Id: I514a144a3a0ff7dbdd4987da5361b94bdfe9a437
2015-04-15 14:27:56 -07:00
Paul McLean
55787399c9 Merge "Audio Devices Enumeration/Notification API" 2015-04-15 21:08:27 +00:00
Paul McLean
a33be211e7 Audio Devices Enumeration/Notification API
Change-Id: I4eecfa43e4fecfe309ddd805ed193d078b10d5e6
2015-04-15 10:56:49 -06:00
Amith Yamasani
d1500d8ff1 Merge "Always set the dataDir for the given userId" 2015-04-14 23:45:13 +00:00
Amith Yamasani
1742cfbd8a Always set the dataDir for the given userId
Don't try to optimize for userId != 0 when generating the
ApplicationInfo.

Change-Id: I2eb2d43f36677a781643a1e86a19c8850d517411
2015-04-14 15:41:20 -07:00
Adam Powell
ecee322e59 Add ComponentName.createRelative methods
In a number of places, it's convenient to be able to refer to
ComponentName classes with relative package paths as they are
interpreted in manifest parsing. Express the official (yet simple)
policy for this in a simple pair of factory methods for ComponentName.

Change-Id: I81a40c81b7975445dd9f06292363b69bb072b16d
2015-04-14 15:20:16 -07:00
Adam Powell
2442841819 Implement ChooserTargetService querying for ChooserActivity
First cut at querying services provided by apps that offer
ChooserTargetServices. This first implementation provides no ranking.

Bind to a limit of 5 ChooserTargetServices and offer the
ChooserTargets they provide as options in the system
ChooserActivity. The chooser now presents targets as a grid and
displays the activity icon from the referrer activity.

Change-Id: I45db829f184fc78d4f18d42b2a60b25bc301eba8
2015-04-13 16:51:16 -07:00
Clara Bayarri
28e7ba6644 Merge "Show and trigger activities that implement Text Processing actions" 2015-04-12 19:46:42 +00:00
Jim Miller
ce7eb6daf0 Clean up FingerprintManager API and make it public.
Change-Id: I6a99dccd485c053cb47dbd0ec08b41a2dc5b17c8
2015-04-11 12:34:56 -07:00
Jeff Sharkey
6036cd5126 Merge "Support moving apps to expanded storage." 2015-04-11 15:55:27 +00:00
Fabrice Di Meglio
30ca50a3dd Merge "Add Default Browser App support and relax Hosts validation for AppLinks" 2015-04-11 02:07:39 +00:00
Fabrice Di Meglio
6227172310 Add Default Browser App support and relax Hosts validation for AppLinks
- add private PackageManager APIs for setting/getting the default
Browser App package name
- serialize / deserialize the default Browser App package name per User

Also relax the Hosts name validation for the AppLinls feature. Now we
just care if the IntentFilter is having an HTTP or HTTPS scheme.

Change-Id: I4436f66ac6beff57e14f7f3a2a00b0b582c03be9
2015-04-10 17:54:02 -07:00
Fabrice Di Meglio
69010094aa Merge "Add IntentFilter auto verification - part 6" 2015-04-11 00:23:04 +00:00
Fabrice Di Meglio
2d897fbc44 Add IntentFilter auto verification - part 6
- fix handleAllWebDataURI() for taking into account CATEGORY_APP_BROWSER

Change-Id: I91f7628b3e2e40aa44143470ad38576f7874c7ff
2015-04-10 14:00:17 -07:00
Ashutosh Joshi
c5d8d88b12 Merge "Adding a feature string for high capability sensors." 2015-04-10 18:36:43 +00:00
Ashutosh Joshi
eae371bf6f Adding a feature string for high capability sensors.
Adding a feature string for higher capability sensor platforms.
The string is supposed to signal the availability of lower power and
higher accuracy sensor processing on a supporting device.

Change-Id: I8093065278589fc9cc41fcc7f9b898c7eae20dff
2015-04-10 09:33:16 -07:00
Clara Bayarri
d5bf3ed9b0 Show and trigger activities that implement Text Processing actions
This CL adds the Activities that support Intent.ACTION_PROCESS_TEXT
to the Text Selection Action Mode in Editor, and triggers an intent
with the currently selected text when they are selected.

It also adds the required mechanism to allow a View to request an
intent to be started, and return the activity result back to it.

Change-Id: I62ec618010edf01da41338c8c1a7dd4292a15227
2015-04-10 16:28:35 +01:00
Jeff Sharkey
b9f3674c11 Support moving apps to expanded storage.
Start deriving the data path for apps based on the volume UUID where
the app lives.  This path is used for all higher-level APIs, giving
us a clean place to switch app storage.

When parsing a package, keep track of the volume UUID where it lives
and update PackageSetting once installed.  For now continue treating
moves as installs, but we'll eventually clean this up to avoid the
additional dexopt pass.  Wire up move to use the new installd command
to move private data between devices.

Cache LoadedApk only for the current user, since otherwise the data
dir points at the wrong path.

Bug: 19993667
Change-Id: I53336e3b147d5fd3130e6800869af172b628da37
2015-04-10 00:24:03 -07:00
Fabrice Di Meglio
e48c137acd Add IntentFilter auto verification - part 5
- optimize IntentFilter verification: dont do stuff we dont want
if we dont need to do them.

- improve IntentFilter candidates filtering and also improve
at the same time fix for bug #20128771: we can return the candidates
list rigth the way if the Intent is not related to a Web data URI and
include the "undefined verification state" ones if the first filtering
pass does not leave any.

Change-Id: I19f5c060f58b93530e37b4425d19ed23d2a0f4c0
2015-04-09 16:19:44 -07:00
Fabrice Di Meglio
7d014cec63 Add IntentFilter auto verification - part 4
- add domain verification priming at boot when the PackageManagerService
singleton is created. This will mainly set the domain verification status
to INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_ALWAYS for all Apps that
have an IntentFilter with action VIEW and data scheme HTTP or HTTPS.

- also optimize Intent resolution by taking into account Browser Apps

Change-Id: Id8e66c9759a99e79b07051595ca89a168dc5ae0e
2015-04-08 19:24:15 -07:00
Svetoslav
cd890311fb Merge "Apps can request permissions only on platforms that have runtime permissions." 2015-04-08 19:28:02 +00:00
Fabrice Di Meglio
0788595e0c Add IntentFilter auto verification - part 3
- add private API PackageManager.getAllIntentFilters(String)
for getting all IntentFilters from a given package
- update IntentFilterVerificationInfo to use an ArrayList<String>
for domains instead of a String[]
- if you make an App a default domain handler then make the
others as non default
- create an IntentVerificationInfo even if the App IntentFilters
do not need to be verified. This would be done only if the App
has some domain URLs defined and would allow to make it the
default handler for a domain
- a few code optimizations here and there

Change-Id: I4535372a0bb1a2c8e662e1485be8ca700003e9b3
2015-04-07 17:13:32 -07:00
Svetoslav
96a77167c8 Apps can request permissions only on platforms that have runtime permissions.
Change-Id: Id0e53c37c9d472287f5bd6a610d446aef6b695b9
2015-04-07 17:12:00 -07:00
Narayan Kamath
9d1878674c Merge "Don't set userSetLocale from Configuration.setLocale." 2015-04-07 13:08:18 +00:00
Clara Bayarri
9b8178719b Merge "Create the Process Text Intent Action and Extra" 2015-04-07 12:52:31 +00:00
Clara Bayarri
0a26157a9f Create the Process Text Intent Action and Extra
Change-Id: I33e30324970e91b04fcc233b91c9d43580c446fc
2015-04-07 13:49:54 +01:00
Benjamin Franz
39fb7fd730 Allow silent package install for device owner.
Allow the device owner to silently install and remove packages using the
PackageInstaller APIs. Show notifications to the user after the
installation / deletion was successful.

Bug: 19422461
Change-Id: I0506e18c510efd9d04c4aea9b60a37456e689615
2015-04-07 11:02:46 +01:00
Jeff Sharkey
b2b9ab8354 Installing packages to expanded storage.
PackageManager now offers to load/unload packages when expanded
volumes are mounted/unmounted.  Expanded storage volumes are still
treated as FLAG_EXTERNAL_STORAGE from a public API point-of-view,
but this change starts treating the INSTALL_EXTERNAL flag as
exclusively meaning ASEC containers.

Start tracking the UUID of the volume where a package is installed,
giving us a quick way to find relevant packages.  When resolving an
install location, look across all expanded volumes and pick the one
with the largest free space.  When upgrading an existing package,
continue preferring the existing volume.  PackageInstaller now knows
how to stage on these volumes.

Add new movePackage() variant that accepts a target volume UUID
as destination, it will eventually move data too.  Expose this
move command through "pm" command for testing.

Automount expanded volumes when they appear.

Bug: 19993667
Change-Id: I9ca2aa328b9977d34e8b3e153db4bea8b8d6f8e3
2015-04-06 21:17:58 -07:00
Christopher Tate
e012a23556 Back up / restore preferred app configuration
Bug 19848104

Change-Id: I84cdfcc44b48a9732984955d7eedf745b5586bdd
2015-04-06 17:36:25 -07:00
Alan Viverette
863ba4c4bf Merge "Unify drawable caches" 2015-04-06 21:40:45 +00:00
Fabrice Di Meglio
96bba82ac4 Merge "Add private flag PRIVATE_FLAG_HAS_DOMAIN_URLS to ApplicationInfo" 2015-04-03 19:33:41 +00:00
Fabrice Di Meglio
d3d8a32217 Add private flag PRIVATE_FLAG_HAS_DOMAIN_URLS to ApplicationInfo
This is for supporting Settings UX and Domain URLs

- the new PRIVATE_FLAG_HAS_DOMAIN_URLS flag will be set by
generateApplicationInfo() when the Activity is said to have some
IntentFilter with a VIEW action and a http / https data URI

- code cleaning for args passing
- also add a new constant for the MetricsLogger

Change-Id: I5c9762fc2c4a9b46c0e255b9a23bffd70fae40c7
2015-04-03 12:29:53 -07:00
Fyodor Kupolov
c38a54b1f0 am 30c688da: am 031898df: am 3d8b7f4d: Merge "Support for storing OAT files in app directory"
* commit '30c688da8bd2b3320446a06424e1cc57b693522a':
  Support for storing OAT files in app directory
2015-04-03 14:52:14 +00:00
Narayan Kamath
70392818f0 Don't set userSetLocale from Configuration.setLocale.
This seems to have been a mistake : userSetLocale controls whether
a locale is persisted and as written it's too easy to make system wide
locale changes without intending to. Third party apps do not have
sufficient permissions to set global locales anyway, so they won't care
whether it's set or not.

Also, set userSetLocale = true in the LocalePicker.updateLocale internal
API, which is what all platform apps use to set the locale.

In addition, this commit fixes a bug where we were not setting RTL
directionality for the default locale loaded by the activity manager
service.

Change-Id: I2e11ad31e012dfa314ab8d78034f986b49ecae60
2015-04-03 13:24:21 +01:00
Tor Norbye
2a53812cfa Merge "Fix resource type annotations for obtainStyledAttributes" 2015-04-02 23:45:22 +00:00
Tor Norbye
c91531a863 Fix resource type annotations for obtainStyledAttributes
Change-Id: I7681249ff46d687675d0dcd7d4f077646efba687
2015-04-02 14:51:16 -07:00
Alan Viverette
0daa5713ee Merge "Fix issues with theming of preloaded ColorStateLists" 2015-04-02 18:02:04 +00:00
Santos Cordon
885b3ef519 Merge "New generic intent for SIM Activation" 2015-04-01 22:38:26 +00:00
Santos Cordon
15a13781ad New generic intent for SIM Activation
New hidden intents and permissions for a generic SIM-activation
activity.  New activity will handle generic SIM setup requests and then
delegate to the appropriate activation method (OTASP, HFA,
CARRIER_SETUP).

Change-Id: I1b22200544abefe486ec961b67a6e77b4d15aec3
2015-04-01 15:35:55 -07:00
Alan Viverette
4325f8e02a Unify drawable caches
Drawables that don't need a theme are now stored in a separate cache,
rather than storing a separate copy in each theme-specific cache.

Bug: 19992973
Change-Id: I98a67ea480af3d381469303439f4aea44ba1e909
2015-04-01 15:00:30 -07:00
Alan Viverette
e0f95f39c5 Fix issues with theming of preloaded ColorStateLists
Ensures changing configurations mask is propagated to the host drawable
so that it can be properly cleared from cache on configuration changes.
Also fixes constant state handling of the mask in the Inset and Rotate
drawables.

Hides new ColorStateList methods related to theming, since they should
only be used during preloading or internally by framework drawables.

Fixes bug where the cached versions of themeable ColorStateLists were
modified by calling applyTheme() on the host drawable.

Also cleans up some docs and naming in GradientDrawable.

Bug: 19966397
Change-Id: I8c8d3cabbaf94b488c2b8fe9fd423e07d824c19c
2015-04-01 13:10:18 -07:00
Craig Mautner
aa2609aae7 Merge "Revert "Add lockTaskOnLaunch attribute."" 2015-04-01 07:48:08 +00:00
Craig Mautner
6cd6cec2ad Revert "Add lockTaskOnLaunch attribute."
This reverts commit 0fb1cb56ab.
2015-04-01 00:02:12 -07:00
Craig Mautner
e1d6333341 Merge "Add lockTaskOnLaunch attribute." 2015-04-01 01:40:57 +00:00
Craig Mautner
0fb1cb56ab Add lockTaskOnLaunch attribute.
The new AndroidManifest activity attribute, lockTaskOnLaunch attribute
is a boolean that puts the system in lockTask mode when true and if
the activity specified is the root of a privileged task.

This bug also fixes lockTask mode for root activities that finish
themselves. Previously finish was not allowed even if there were
activities left in the task that were still valid.

A NullPointerException for lock task toasts has also been fixed.

Fixes bug 19995702.

Change-Id: Iba6976b1a0cc5a22eb526db66d2e9af66445541f
2015-03-31 18:15:05 -07:00
Fyodor Kupolov
654875fad0 Merge "Support for nested bundles in setApplicationRestrictions" 2015-03-31 22:52:18 +00:00
Narayan Kamath
b12dcfb1b1 Remove org.apache.http.legacy for declared shared lib lists.
We currently unconditionally include this shared library in the
boot classpath, so attempts to compile it will fail resulting in
unnecessary logspam.

Change-Id: Iafe9b2e725e10d939cd39dd4a816a146a6031baf
2015-03-31 08:51:53 +00:00
Fyodor Kupolov
262f9952e6 Support for nested bundles in setApplicationRestrictions
Added new restriction types - bundle and bundle-array.

Modified RestrictionsManager.getManifestRestrictions to support new
hierarchical restrictions.
Added RestrictionsManager.convertRestrictionsToBundle, which enables
programmatic conversion from a list of RestrictionEntries to a Bundle.

Modified read/write methods for application restrictions in UserManagerService.
Added unit tests.

Bug: 19540606
Change-Id: I32b264e04d5d177ea5b4c39a8ace5ee0ce907970
2015-03-30 17:59:07 -07:00